Являются ли какие - либо элементы управления или рода, с selectedindexchanged
события или собственности selecteditem
может быть?
Теперь я использую ContentPresenter
и мне нужно некоторое решение для получения индекса выбранной проблемы. С DataTemplate
внутри это желательно.
Мой код выглядит так:
<Border BorderThickness="1">
<ContentPresenter Content="{Binding Path=Value}">
<ContentPresenter.Resources>
<DataTemplate DataType="{x:Type System:String}">
<TextBox Text="{Binding Path=Content, RelativeSource={RelativeSource AncestorType={x:Type ContentPresenter}}}"
TextAlignment="Left"
BorderThickness="0"/>
</DataTemplate>
<DataTemplate DataType="{x:Type System:Int32}">
<TextBox Text="{Binding Path=Content, RelativeSource={RelativeSource AncestorType={x:Type ContentPresenter}}}"
TextAlignment="Left"
BorderThickness="0"/>
</DataTemplate>
<DataTemplate DataType="{x:Type System:Double}">
<TextBox Text="{Binding Path=Content, RelativeSource={RelativeSource AncestorType={x:Type ContentPresenter}}}"
TextAlignment="Left"
BorderThickness="0"/>
</DataTemplate>
<DataTemplate DataType="{x:Type System:Boolean}">
<Border Background="White">
<CheckBox IsChecked="{Binding Path=Content, RelativeSource={RelativeSource AncestorType={x:Type ContentPresenter}}}"
HorizontalAlignment="Left"/>
</Border>
</DataTemplate>
</ContentPresenter.Resources>
</ContentPresenter>
</Border>
Вам нужен DataGrid
ItemsControl
или его производные ListView
, ListBox
, DataGrid
и т.д. У них есть свойство SelectedItem
.
Чтобы установить ItemTemplate
зависимости от любых критериев, используйте DataTemplateSelector
и установите свойство Itemscontrol.Itemtemplateselector
. Подробности в msdn