2013-10-16 56 views
2

我正在使用WPF DataGrid,它很糟糕。它假定我想要基於行或單元格選擇的用戶界面體驗,首先我必須select單元格/行,然後再次單擊以將其放入編輯模式。WPF DataGrid的替代方法暴露了控件,就好像它們放置在Grid控件上一樣

我知道有一些solutions建議一些hack用DataGrid做單擊編輯。然而,假設我可以將任何類型的控件放入列中,使其完美工作並不可靠。

我在找的是一個網格控件,將子控件放入列中,就好像它們手動放在那裏一樣。所以它更像是一個ItemsControl生成的網格佈局,而不是所有的鈴聲和​​哨子DataGrid。

使用網格佈局的SharedColumns功能不會像其他開發人員注意到的那樣工作。在一些複雜的情況下,SharedColumns變得不穩定,佈局開始跳躍和閃爍並鎖定。

有什麼建議嗎?

回答

2

你可以通過綁定到一個不同的控件,如列表框,並使用Item Template來生成你的「列」(可能通過在水平堆棧面板中使用固定寬度的項目),即。

<ListBox ItemsSource="{Binding Path=MyData}"> 
    <ListBox.ItemTemplate> 
     <StackPanel Orientation="Horizontal"> 
     ...Bunch of text boxes, etc.... 
     </StackPanel> 
    </ListBox.ItemTemplate> 
</ListBox> 

你也可以使用一個ListView,它支持項目模板,並帶有一個預製的GridView的「風格」:http://msdn.microsoft.com/en-us/library/system.windows.controls.listview.aspx

相關問題