Я пытаюсь по существу обернуть содержимое DataTemplate
в ListView
GridViewColumn
с рамкой. То, что я хочу знать, это то, что можно поставить рекламодателя, который будет окружать этот шаблон, чтобы мне не нужно было указывать границу в каждом DataTemplate
на каждом столбце (что я и делаю сейчас). У меня есть что-то вроде этого, но я знаю, что это не так:Оберните или украсьте wpf listview datatemplate
<Style TargetType="{x:Type ListBoxItem}">
<Setter Property="TemplateContent">
<Setter.Value>
<ControlTemplate>
<StackPanel>
<Border BorderBrush="Green" BorderThickness="1">
<AdornedElementPlaceholder />
</Border>
</StackPanel>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
Это жалуется, что TemplateContent
не является допустимым типом. Я также пробовал с DataTemplate
, и это тоже не работает (понятно).
Я знаю, что могу просто создать DataTemplate
, однако содержание для каждого столбца отличается. По крайней мере, он связывается с разными полями. Мне интересно, есть ли решение с использованием динамического ресурса, но я мало знаю об этом. Спасибо за вашу помощь
EDIT: Вот пример моей ListView
:
<ListView ItemsSource="{Binding Path=OrderLines}"
ItemContainerStyle="{StaticResource ResourceKey=ListViewItemContainerStyle}">
<ListView.View>
<GridView>
<GridViewColumn>
<GridViewColumn.CellTemplate>
<DataTemplate>
<TextBox MaxWidth="30" Width="30" MaxLength="2"
Text="{Binding Path=Quantity,ValidatesOnDataErrors=True}" />
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
<GridView>
<ListView.View>
</ListView>
По существу я хочу, чтобы обернуть это текстовое поле в DataTemplate
и любые другие элементы в дополнительных столбцах.
Это не работает, я думаю, потому что он заменяет весь шаблон ListBoxItem/ListViewItem, поэтому зеленый квадрат проходит вокруг всей строки, а не вокруг каждой ячейки. – itowlson
Я должен упомянуть, что я ошибся, и что тип цели будет любым ListVIEWItem, а не ListBoxItem. Таким образом, я не могу заставить этот пример работать. Он будет работать для тех элементов в списке, которые являются GridViewColumns, но все, что я вижу, это зеленая рамка, и содержимое теперь исчезло. В моем списке есть пользовательские шаблоны. Я обновляю основной запрос с образцом кода. Как я мог бы применить этот стиль к уникальным спискам (т. Е. - что является свойством связывать статический ресурс с списком, потому что это не celltemplate). –