2011-08-02 6 views
0

クリックしたラインをハイライトしたい。 TreeViewItemが選択されている間、強調表示されているように見える(diffrenceがあるように見える - フォーカスされている(選択されている)とき、Highlight-Colorは青で、選択されていれば、 私はGotfocus Event of Lineをキャッチしようとしましたが、どのプロパティを変更したいのかわからず、発砲していません(Focusable = trueでも)。 私はMouseDownイベントを発射しました(これは私がこの目的では使いたくない)、変更するプロパティはまだ分かりません。 MsdnとGoogleは何の意味もありません。 すべてのアイデア? ありがとうございました。ハイライトGotFocusのライン

答えて

0

これを今すぐチェックしてください。

<Path Data="M101,42 L380,76" Fill="#FFF4F4F5" Height="35" 
    Margin="101,42,243,0" Stretch="Fill" Stroke="Black" 
VerticalAlignment="Top" MouseEnter="Path_MouseEnter" Name="myLine"/> 

とC#

private void Path_MouseEnter(object sender, 
System.Windows.Input.MouseEventArgs e) 
{ 
    myLine.Stroke = new SolidColorBrush(Colors.Green); 
} 

例えば

あなたはスタイルを使用して、この種の仕事のためにトリガすることができ、今:)

+0

なぜ私はテキストブロックを使用し、ラインのGotFocusを取得する場合は、そのGotFocusを使用しますか? TextblockとControlsからLineからシェイプを継承している間は、TextblockとLineは共通点がありません。 – csharpnewb

+0

私はあなたの質問に誤解しました。私の悪い。 –

+0

seondの答えに私のコメントを見て、私はさらに問題を説明しました;) – csharpnewb

0

を確認してください。 XAMLだけが動作するコードは必要ありません。 mouse down = trueがトリガーされ、トリガー内で線の色や背景などを変更するトリガーを作成する

thisトリガーの基本については、こちらを参照してください。

+0

それは本当です。しかし、変わるべき財産がわからないという問題はまだ残っています。私はすでにUIElementを調べて、その強調表示部分(例えば、TreeViewItem)をシミュレートするのに有用であるとは思わなかった。バックグラウンドとフォアグラウンドはどちらも機能しません。 – csharpnewb

+1

たぶんストロークプロパティ... – Reniuz

+0

スタックパネルなどの別のコントロールの中にその行をカプセル化できますか?その後、スタックパネルの背景を変更すると、そのラインがハイライトされているように見えますか? –