我有一个布尔全局变量,如果管理员已登录并且想要修改列表和组合框的内容,则该变量设置为true。因此,每个组合旁边都会显示一个按钮,以便在单击时显示一个对话框。
如果我没有为WPF编码,我可能会在每个窗口中包含类似于以下内容的某种代码:
如果gAdminEditLists = True则btnUpdateCombo.Visibility = Visible Else btnUpdateCombo.Visibility = Collapsed
在我的WPF应用程序中,我使用的是整个应用程序中使用的按钮的样式,我猜测最好的方法是根据gAdminEditLists变量的值设置样式中按钮的可见性
我能看到这样做的唯一方法是在按钮样式中使用某种转换器,将gAdminEditLists值转换为可见或折叠。
我不太清楚如何继续这个或者这是否是最好的方法,所以任何建议都会受到赞赏。
答案 0 :(得分:0)
查看System.Windows.Controls命名空间中的BooleanToVisibilityConverter类。
答案 1 :(得分:0)
你的问题是你正在使用全局变量吗?
如果你有一个实现了通知或依赖属性的属性,你就可以了。与全局变量最接近的是app上的属性(我假设你的全局变量)
defining dependency properties on app.xaml,但您可以使用INotifyPropertyChanged。
binding to properties in app.xaml.cs
享受!