我創建了一個wpf應用程序,有兩個畫布我想將兩個cancas的控件存儲到一個集合,以便我可以在沒有兩個循環的情況下處理它們。什麼是最好的方法來實現這一點。如何從兩個畫布的控件創建集合
0
A
回答
1
你可以使用LINQ的Union
操作兩個Canvas.Children
集合一起拉入一個:
for (UIElement child in canvasOne.Children.Cast<UIElement>()
.Union
(canvasTwo.Children.Cast<UIElement>()))
{
...
}
注意以下幾點:
顯示實際上並不創建一個新的,可變的代碼你可以修改的集合;它只是設置一個
IEnumerable<UIElement>
,以便您可以一次遍歷這兩個集合的元素。也就是說,現有的兩個集合將被訪問,而不是一個新集合。Cast<UIElement>
運營商是必要的,因爲Canvas.Children
不實施IEnumerable<T>
,但只有IEnumerable
。您需要在項目中引用
System.Core.dll
程序集,並在您的代碼文件中導入System.Linq
命名空間以使其生效。
0
相關問題
- 1. C#創建兩個集合
- 2. 如何從兩個Django表單創建一個字段集合?
- 3. 如何從defrecord創建一個集合?
- 4. 如何創建一個具有集合的控件
- 5. 畫布創建兩個單獨的動畫瀑布對象
- 6. 從集合創建集合?
- 7. 合併兩個畫布
- 8. 如何使用集成到angularjs的famo.us創建動畫畫布?
- 9. Node,MongoDB,Mongoose Design Choice - 創建兩個集合或一個集合
- 10. 如何創建多個集合的均勻分佈?
- 11. 創建控件集合了循環
- 12. 如何在兩個數組中創建一個對象集合?
- 13. 如何在控件集中時創建高光動畫
- 14. EaselJS,從文件創建圖像(畫布)
- 15. 從Draw2D畫布創建PDF
- 16. 從畫布創建圖像
- 17. 如何從res/values/arrays.xml創建集合?
- 18. 如何刪除從控制集合創建的對象的事件
- 19. 如何從兩個接口的聯合創建一個類型?
- 20. Mongo - 從兩個集合中構建表
- 21. 的WPF控件dose't從畫布控制在畫布上顯示
- 22. 創建畫布
- 23. 如何創建IQueryable集合?
- 24. 創建一個畫布
- 25. 如何創建一個包含集合
- 26. 如何創建複合控件?
- 27. 如何從不同的表創建兩個超集
- 28. 如何從MongoDB中的JSON數據創建一個集合?
- 29. MySQL:如何從觸發器內的值創建一個集合?
- 30. Backbone:從JSON創建集合