मेरे पास एक उपयोगकर्ता नियंत्रण है जिसे मैं एक MainWindow
रनटाइम में लोड करता हूं । मुझे युक्त विंडो से हैंडल नहीं मिल सकता है UserControl
।
मैंने कोशिश की है this.Parent
, लेकिन यह हमेशा अशक्त है। क्या कोई जानता है कि WPF में उपयोगकर्ता नियंत्रण से युक्त विंडो को कैसे संभालना है?
यहां बताया गया है कि नियंत्रण कैसे लोड किया जाता है:
private void XMLLogViewer_MenuItem_Click(object sender, RoutedEventArgs e)
{
MenuItem application = sender as MenuItem;
string parameter = application.CommandParameter as string;
string controlName = parameter;
if (uxPanel.Children.Count == 0)
{
System.Runtime.Remoting.ObjectHandle instance = Activator.CreateInstance(Assembly.GetExecutingAssembly().FullName, controlName);
UserControl control = instance.Unwrap() as UserControl;
this.LoadControl(control);
}
}
private void LoadControl(UserControl control)
{
if (uxPanel.Children.Count > 0)
{
foreach (UIElement ctrl in uxPanel.Children)
{
if (ctrl.GetType() != control.GetType())
{
this.SetControl(control);
}
}
}
else
{
this.SetControl(control);
}
}
private void SetControl(UserControl control)
{
control.Width = uxPanel.Width;
control.Height = uxPanel.Height;
uxPanel.Children.Add(control);
}