1

ListView の次のスタイルをユーザー コントロール (またはウィンドウ) として機能させることができます。

<ListView.ItemContainerStyle>
    <Style TargetType="Control">
        <Style.Resources>
            <SolidColorBrush
                x:Key="{x:Static SystemColors.ControlBrushKey}"
                x:Shared="False"
                Color="{DynamicResource {x:Static SystemColors.HighlightColorKey}}" />
            <SolidColorBrush
                x:Key="{x:Static SystemColors.ControlTextBrushKey}"
                x:Shared="False"
                Color="{DynamicResource {x:Static SystemColors.HighlightTextColorKey}}" />
        </Style.Resources>
        <EventSetter
            Event="MouseLeftButtonUp"
            Handler="ListView_Content_MouseLeftButtonUpEvent" />
    </Style>
</ListView.ItemContainerStyle>

カスタム コントロールで同じ結果を得るにはどうすればよいですか? システムの色が変更されたときに色が再計算されるように、「x:Shared」が必要です。特別な処理のために EventSetter が必要です。ただし、どちらも Generic.xaml ではサポートされていません。カスタム コントロールでこれらの機能を取得する正しい方法は何ですか?

ありがとうございました。

4

1 に答える 1

0

Generic.xamlのStyle.Resourcesを使用できたので、そこで何が間違っているのかわかりません。

イベントハンドラーをアタッチするには、カスタムコントロールのOnApplyTemplateをオーバーライドし、コードにイベントハンドラーを追加します。

于 2012-07-30T21:11:04.257 に答える