我試圖通過代碼更新wpf中的某些用戶控件,但沒有運氣。WPF中的代碼更新UI
這就是XAML:
<UserControl x:Class="SimuladorNocs.UI.Diagram.PropertiesWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:PropertyGrid="clr-namespace:Deepforest.WPF.Controls"
>
<DockPanel>
<StackPanel x:Name="stackPanel" Width="300" Height="600" HorizontalAlignment="Center">
<PropertyGrid:PropertyGridControl Height="300" x:Name="MyPropertyGrid" />
</StackPanel>
</DockPanel>
,這就是C#代碼:
public void SetInstance(object obj){
MyPropertyGrid = new PropertyGridControl { Instance = obj, Height = 300 };
stackPanel.Children.Clear();
stackPanel.Children.Add(MyPropertyGrid); }
最後,物業appers正在改變,但我無法看到UI的變化。我也試圖創建一個新的對象,而不是使用現有的MyPropertyGrid,沒有工作,也試圖不清除堆棧面板沒有成功...
我錯過了什麼?
感謝
不,它不適合我。 試圖做到這一點,但從另一個用戶控件調用SetInstance(),例如,當您從構造函數調用時,它的工作原理... – caiokf 2009-10-17 19:45:40
在這種情況下,您可以發佈一個完全不需要外部庫的repro ? – 2009-10-17 19:54:02