0
A
回答
0
让我们认为你有5个用户控件。在创建向导时,您需要在网格内添加新的UserControl,并从相同的父网格中删除以前的UserControl。
以下函数将自动删除较旧的UserControl并添加新的UserControl。。但是对于第一个UserControl,您可以直接使用MyParentPanel.Children.Add(myFirstUserControl)将其添加到其父项中;
private void AddNewUserControlAndAutoRemoveOldUserControl(UserControl control)
{
if (control != null)
{
Panel parent = control.Parent as Panel;
if (parent != null)
{
// Removing old UserControl if present
if(parent.Children.Count > 0)
parent.Children.RemoveAt(0);
parent.Children.Insert(0, control);
}
}
}
}
希望这可以帮助你!
0
那么,有多种方法可以完成向导,但最简单的方法就是从主窗体管理UserControls。只需向主窗体添加一个区域,该窗体将成为每个用户控件的父窗体,然后在需要时从容器中添加/删除用户控件。
0
最优雅的方式来做到这一点(我会说最好的)是使用选择器或列表框。
您的向导将有多个页面,每个页面都暴露一个或多个信息,从而控制绑定到某些数据。换句话说,你应该考虑拥有一个包含数据的“模型”,页面将绑定到这个数据。
现在,考虑为每个页面设置不同的模型,并为这些模型提供列表框。这个ListBox应该已经定义了它的ItemTemplateSelector,它允许在项目数据(即模型)上选择某个DataTemplate。
该技术最难的部分是为ListBox创建/定义控件模板,该模板应该仅用于显示所选项目(SelectedItem)。以这种方式,您只需更改当前选择,向导页面将自动显示。
虽然这种技术看起来是一种矫枉过正,但对于“经典”方法来说,这是非常方便的。您的代码更干净,更易于调试,可重复利用,并且在模块之间提供高度分离。所有这些都会带来更多的可靠性和快速发展。
相关问题
- 1. WPF:更改用户控件编程
- 2. 如何重用WPF用户控件,但更改绑定属性?
- 3. 如何更改WPF控件模板
- 4. 如何在wpf用户控件中托管WinForms用户控件?
- 5. 在wpf应用程序中动态更改用户控件
- 6. 如何更新WPF用户控件中的依赖项属性?
- 7. 更改用户控件的嵌套元素的属性:WPF/C#
- 8. 如何WPF用户控件从WinForm的
- 9. 如何在WPF的用户控件中构建可重用的用户控件?
- 10. WPF用户控件
- 11. WPF用户控件
- 12. 如何从MVVM WPF中的子项更改父控件?
- 13. 如何更改C#中的WebBrowser控件用户代理#
- 14. 如何更改用户控件中的默认tagprefix
- 15. WPF用户控件不更新路径
- 16. 从WPF用户控件更改为窗口?
- 17. WPF MVVM更改按钮内容与加载用户控件
- 18. 在WPF/XAML Web浏览器控件上更改用户代理?
- 19. 用户控件中的WPF用户控件不呈现路径
- 20. WPF用户控件的HitTest
- 21. 如何从WPF中的用户控件引发父事件?
- 22. 更改用户控件的动画
- 23. 如何更改用户控件的CSS里面的图像
- 24. 如何制作包含多个用户控件的wpf用户控件
- 25. 如何使用WPF中的滚动条加载用户控件?
- 26. 如何从该控件的外部更改WPF控件的布局
- 27. WPF中的可编程用户控件
- 28. WPF用户控件中的错误
- 29. WPF中的C#用户控件
- 30. 用户控件在WPF中的属性
您可能想查看PRISM来管理您的意见。它允许你定义你的主窗口的区域,并且当你向其他视图请求导航时,它将显示并隐藏你的用户控件视图。它乍一看似乎令人望而生畏,但一旦掌握了它,就会让您的导航逻辑更加轻松。 –