2012-05-11 2 views
0

Я не могу найти эквивалент свойства ListView.FullRowSelect, который мне нравился в Windows Forms. Поддерживает ли WPF ListView эту функцию или мне нужно перенести ее в элемент управления DataGrid? ;)Эквивалент WinForms ListView.FullRowSelect в WPF

Любая помощь будет высоко оценена.

+0

Нет никого, вам придется обращаться к этому самостоятельно – animaonline

ответ

2

Я не использовал WinForms, но если это похоже на MFC, я предполагаю, что вы хотите, чтобы вся строка была выделена при нажатии на элемент, а не только в первой ячейке в этой строке. Это абсолютно возможно сделать в управлении WPF ListView.

Поскольку вы не разместили свой XAML, я должен предположить, что вы не установили вид ListView на номер GridView. Вам не нужно сразу перейти к использованию элемента управления DataGrid.

Вот пример типичного способа сделать это:

<ListView ItemsSource="{Binding Items}"> 
    <ListView.View> 
     <GridView> 
      <GridViewColumn DisplayMemberBinding="{Binding Column1}" Header="Column 1" /> 
      <GridViewColumn DisplayMemberBinding="{Binding Column2}" Header="Column 2" /> 
      <GridViewColumn DisplayMemberBinding="{Binding Column3}" Header="Column 3" /> 
     </GridView> 
    </ListView.View> 
</ListView> 

Items может быть ObservableCollection<MyClass>, где MyClass имеет три открытых строковые свойства, называемые Column1, Столбец2 и Column3:

public class MyClass 
{ 
    public string Column1 { get; set; } 
    public string Column2 { get; set; } 
    public string Column3 { get; set; } 
} 

Выделение всей строки выполняется по умолчанию, когда вы используете GridView.

+0

Большое спасибо за ваш ответ. Прошу прощения за то, что вы не опубликовали мой XAML-код в моем первом сообщении, но он выглядит примерно так же, как ваш. Фактически, он выбирает всю строку при нажатии на ТЕКСТ ячейки, но не наводит полную строку при нажатии на пробел внутри моего списка. – beta

Смежные вопросы