5

XAMLコードにを表示するためにこれListViewがありC++/CXます。はListView選択メニューとして使用されます。

<ListView x:Name="itemsListView"
 ItemsSource="{Binding Source={StaticResource MenuDataSourceCVS}}"
 HorizontalAlignment="Stretch"
 Width="230"
 Margin="0,45,0,0"
 VerticalAlignment="Top"
 Grid.Row="1"
 SelectionChanged="itemsListView_SelectionChanged" SelectionMode="Single"
 HorizontalContentAlignment="Stretch" VerticalContentAlignment="Stretch"
 FontFamily="Global User Interface">
 <ListView.ItemTemplate>
    <DataTemplate>
        <StackPanel Orientation="Horizontal" Height="40" Width="230">
            <TextBlock Text="{Binding Name}"
                Margin="10,5" Width="150" Height="30"
                HorizontalAlignment="Stretch"
                VerticalAlignment="Stretch"/>
            <Border Height="30" Width="30" Margin="5">
                <Image Source="{Binding ImageSrc}" Stretch="Fill"/>
            </Border>
        </StackPanel>
    </DataTemplate>
 </ListView.ItemTemplate>
</ListView>

次の図からわかるように、選択範囲がすべての列を占めるわけではなく、選択するとチェックマークが表示されます。

チェックマークとパディングを使用したListViewの選択

このパディングとチェックマークを削除する方法はありますか?

4

1 に答える 1

16

Blendでビューを開き、リストを右クリックして、[追加のテンプレートの編集] / [生成されたアイテムコンテナの編集(ItemContainerStyle)]/[コピーの編集]を選択する必要があります。次に、アイテムが入力されたときにによって生成されたStyleのを編集できます。左側の[状態]タブで、によって使用される状態を確認できます。ListViewItemListViewListViewItem。それらの1つを選択すると、デザインサーフェスにその状態でのListViewItemの外観が表示され、テンプレートのさまざまな要素プロパティのプロパティ値を定義できる記録モードにも切り替わります。次に、どの要素が視覚状態のアニメーションの影響を受けているかを確認し、これらのアニメーションを変更するか、要素自体を削除します。SelectionStates VisualStatesGroupBlendで要素を削除すると、関連するすべての視覚状態のアニメーションが自動的に削除されるため、Selected状態でSelectionBackground要素が1に変更されることがわかります。変更するすべての状態でOpacityそのターゲットOpacity値を変更できます。別の目的の値、または単に削除するSelectionBackground[オブジェクトとタイムライン]パネルで要素を選択します(実際には、すべての状態のテンプレートから要素が削除され、それに影響するすべてのアニメーションが削除されます)。次に、同様にを削除することもできますHintGlyphBorder, SelectingGlyph, SelectedCheckMarkOuter

パディングを削除するには-小さな赤い記録ボタンをクリックするか、[状態]タブで現在表示されている状態を[ベース]に切り替えて、状態の記録を無効にしてから、[プロパティ]で選択ContentBorderして変更します。Marginタブを0,0,0,0に設定し、。についても同じようにしSelectedBorderます。

Blendの注釈付きスクリーンショットは次のとおりです。 ここに画像の説明を入力してください

于 2013-02-20T21:26:45.723 に答える