আমার একটি ব্যবহারকারীর নিয়ন্ত্রণ রয়েছে যা আমি MainWindow
রানটাইমের সময় লোড করি । আমি থেকে উইন্ডোটি সহ একটি হ্যান্ডেল পেতে পারি না UserControl
।
আমি চেষ্টা করেছি this.Parent
, তবে এটি সবসময়ই বাতিল ডাব্লুপিএফ-তে কোনও ব্যবহারকারী নিয়ন্ত্রণ থেকে কীভাবে উইন্ডোটি থাকা একটি হ্যান্ডেল পাবেন কী জানেন?
নিয়ন্ত্রণ কীভাবে লোড হয় তা এখানে:
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);
}