2013-09-01から1ヶ月間の記事一覧

Q102. ListBox で一行おきに背景色を変えるには?

A.StyleSelector を使用します。以下サンプルです。奇数行と偶数行で背景色を設定します。 まず StyleSelector を継承したクラスを作成し、奇数行・偶数行のスタイルを保持するようプロパティを設けます。そして SelectStyle メソッドをオーバーライドし、…

Q101. ListBoxItem で子要素の編集時に強調表示するには?

A.IsKeyboardFocusWithin プロパティが True の場合、IsSelected プロパティを true にするよう、ListBoxItem のスタイルにトリガーを設定します。DataTemplate で ListBoxItem に TextBox などの編集用コントロールを設けた場合、子要素の TextBox にフォ…

Q100. リストボックスの選択行の背景色を変更するには?

A.SystemColors.HighlightBrushKey を上書きします。以下のサンプルでは選択行の背景色を赤に変更しています。また SystemColors.ControlBrushKey を上書きすると、リストボックスのフォーカスが外れても選択行の強調表示を保持することが出来ます。 <ListBox ItemsSource="{Binding Persons}" IsSynchronizedWithCurrentItem="True" SelectedIndex="0" Grid.Row="1" > <ListBox.Resources> </listbox.resources></listbox>

Q099. コンボボックスの項目に整数リテラル値を設定するには?

A.ComboBoxItem を使わなくても、直接数値を設定することができます。 <Window x:Class="MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:sys="clr-namespace:System;assembly=mscorlib" Title="MainWindow" Height="130" Width="250"> <Grid> </grid></window>