2011-05-06 96 views
0

我嘗試做一個WPF應用程序。應用程序應該如下所示。WPF - 從列表中重複元素

標題 - 左上角 按鈕「新條目」 - 右上角 此後,有一個表或類似的東西。每個條目有三列的 。第一列是名稱,第二列是文本,第三列是一個按鈕。

應該爲我的通用列表中的每個元素顯示並重複名稱,文本和按鈕。

我該怎麼做?是否有像WebForms中的重複控件?我可以使用ListView嗎?如果是這樣,我該如何配置它?

任何幫助,將不勝感激。

謝謝!

+0

可以重新格式化你的問題?很難理解你想問什麼。如果您可以詳細闡述您打算實現的功能,那麼這將便於解釋解決方案。 WPF提供了模板編程,它可能會幫助你。 – RockWorld 2011-05-06 11:14:40

+0

我有一個服務器列表。我想製作一個顯示列表的用戶界面。對象服務器包含名稱和文本。 – user611684 2011-05-06 11:22:24

+0

圖形用戶界面應該看起來像這樣http://i.imgur.com/ghXoC.jpg – user611684 2011-05-06 11:25:49

回答

0

你應該做的是用XAML創建一個DataGrid列綁定到你的域,然後在的ItemsSource設置爲數據網格:

<DataGrid 
    x:Name="ItemsDataGrid" 
    AutoGenerateColumns="False" 
    HeadersVisibility="Column" 
    ItemsSource="{Binding Path=YourDataCollection, Mode=OneWay}" 
    SelectionChanged="IfYouWantToDoSomethingHereHandler" 
    > 
    <DataGrid.Columns> 
     <DataGridTextColumn 
      Header="Name" 
      Binding="{Binding Path=NameFromYourDataObject, Mode=TwoWay}" 
      Width="Auto" 
      /> 
     <DataGridTextColumn 
      Header="DescriptionText" 
      Binding="{Binding Path=DescriptionFromYourDataObject, Mode=TwoWay}" 
      Width="Auto" 
      /> 
     <DataGridTemplateColumn 
      Header="ButtonColumn" 
      CellTemplate="{StaticResource ButtonTemplate}" 
      Width="Auto" 
      /> 
    </DataGrid.Columns> 
</DataGrid> 

凡ButtonTemplate是一個DataTemplate:

<DataTemplate 
    x:Key="ButtonTemplate" 
    > 
     <Button 
      -- bind a command here of what the pressing of the button should look like 
      /> 
</DataTemplate> 

所有你需要做的就是創建DataObject,創建一個List或ObservableCollection(「YourDataCollection」),用這些數據填充它,然後設置ItemsDataGrid的ItemsSource。

這應該是它.. HTH,丹尼爾

+0

,並且爲第二列添加Header模板,使其具有「新建條目」按鈕,並在命令中添加綁定上面的數據網格的集合中的新條目。 – RockWorld 2011-05-06 11:49:31