2010-10-27 5 views
0

Если я привяжу таблицу данных к WPF Toolkit-data-grid ..... не нужно указывать имена столбцов там ... это автоматически примет это из подлежащего дате.динамически заполнять список

Но если я привязываю просмотр списка к наблюдаемой коллекции ... Я должен указать имена заголовков столбцов для каждого столбца один за другим .. в файле xaml.

Так что, если у меня есть список имен столбцов ->List<ColumnHeaderNames> вместе с списка пункта для заполнения ->List<Object to populate list>

Я могу связать список элементов в список ракурс ... и список имен столбцов в список -view header ... но я не знаю, есть ли какое-либо свойство в списке-списке ... для привязки моего заголовка.

Это означает, что ...

У меня есть пользовательский элемент управления, в котором у меня есть 2 списка-просмотры ... один доступен и другой выбран. Мне нужно, чтобы этот пользовательский элемент управления был повторно использован ... Это означает ... если я привязываю список, например ... список shud содержит два столбца ... первый столбец с именем «состояние» и второе имя столбца как «графство ». Но если я привязываю список, например ... Затем listview shud содержит 3 столбца ... с именами столбцов в виде фруктов, цвета и цены.

ответ

1

Я думаю, что лучшим для вас было бы установить свойство View вашего ListView в GridView. Тогда вы можете легко связать столбцы заголовка:

<ListView ItemsSource="{Binding ListOfValues}"> 
      <ListView.View> 
       <GridView >     
        <GridViewColumn DisplayMemberBinding="{Binding XVal}" Header={binding header}"/> 
       </GridView> 
      </ListView.View> 
     </ListView> 

для получения дополнительной информации вы можете пойти туда http://msdn.microsoft.com/en-us/library/system.windows.controls.gridview.aspx

+0

Вы имеете в виду «заголовок» в заголовке = {заголовок привязки} - это список столбцов. – Relativity

+0

, если «header» является одним из свойств объектов в вашем списке элементов (а также, например, XVal), да. В противном случае вы можете изменить источник привязки для заголовка, но не забывайте, что DataContext задан в текущем элементе вашего списка. – Gerrrard

+0

У меня есть несколько столбцов в списке источников ... не один столбец. И мне нужно динамически генерировать gridcolumn – Relativity

0

И если вы используете-структуру, которая содержит список и имя: < {listOfFruits, «Фрукты»} {listofStates, "Штаты>

И потом:

<ItemsControl ItemsSource="{Binding ListOfStruct}"> 
    <ItemsControl.ItemTemplate> 
     <DataTemplate> 
      <ListView ItemsSource="{Binding ListOfitem}"> 
       <ListView.View> 
        <GridView> 
         <GridViewColumn DisplayMemberBinding="{Binding}" Header="{Binding RelativeSource={RelativeSource Mode=FindAncestor, AncestorType=ListView}, Path=DataContext.Header}"/> 
        </GridView> 
       </ListView.View> 
      </ListView> 
     </DataTemplate> 
    </ItemsControl.ItemTemplate> 
</ItemsControl> 

это не самый лучший способ, но я не знаю, как это сделать

+0

Что вы делаете этим путем? ... Создаете ли вы список gridviews? – Relativity

+0

Список списка, в котором свойство view установлено в gridViw, в котором содержится только один столбец – Gerrrard

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