Tag: 可见性

如何为stackpanel实现click事件

我在这里检查了stackpanel类http://msdn.microsoft.com/en-us/library/system.windows.controls.stackpanel.aspx ,它没有点击事件。 我正在开发一个Windows Phone 8应用程序,我在堆栈面板上有一个文本框和一些按钮。 我想要包含一个可以单击stackpanel的function,然后将其上的控件的可见性设置为折叠,然后再次单击它们时它们将变为可见。 我该怎么做呢?

带有OR而不是AND的MultiDataTrigger

我想在我的Button上设置多个DataTriggers 。 我做了一些研究,发现MultiDataTrigger允许你这样做。 如果CCTVPath == string.Empty OR PermissionsFlag == false我希望我的Button的Visibility属性设置为PermissionsFlag == false 。 这就是我到目前为止所拥有的; 在我的代码隐藏中,我设置PermissionsFlag就像这样; public bool PermissionsFlag { get; set; } private void OnPageLoaded(object sender, RoutedEventArgs e) { PermissionsFlag = false; } 正如你所看到的PermissionsFlag肯定是假的,并且肯定是空CCTVPath但是Button永远不会被隐藏。 我究竟做错了什么? 更新: public event PropertyChangedEventHandler PropertyChanged; protected virtual void OnPropertyChanged(string propertyName) { PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName)); } private bool _permissionsFlag; public bool […]

Interlocked是否提供所有线程的可见性?

假设我有一个变量“counter”,并且有几个线程通过使用Interlocked访问和设置“counter”的值,即: int value = Interlocked.Increment(ref counter); 和 int value = Interlocked.Decrement(ref counter); 我可以假设,Interlocked所做的更改将在所有线程中可见吗? 如果没有,我该怎么做才能使所有线程同步变量? 编辑:有人建议我使用volatile。 但是当我将“计数器”设置为volatile时,会有编译器警告“对volatile字段的引用不会被视为volatile”。 当我阅读在线帮助时,它说:“通常不应使用ref或out参数传递易失性字段”。

如何在添加新引用后查看工具箱中的组件?

在我的项目中,我添加了WPFToolkit程序集的引用,重新启动Visual Studio,并且在我的VS ToolBox窗口中没有看到WPFToolkit组件。 我做错了什么?

用于可见性的TargetNullValue绑定到布尔值

我有一个Grid其Visibility属性使用Converter绑定到某个模型的布尔属性: 当我的TreeView的元素被选中时,它很有用,但如果没有选择任何内容或TreeView为空,则默认为可见。 我需要它默认隐藏。 我尝试过使用TargetNullValue=Hidden但它无效。 我想我只是不明白TargetNullValue属性应该如何在这种情况下工作。 有没有人有任何想法如何获得我正在寻找的function?

如何确定控件的可见性?

我有一个包含几个选项卡的TabControl 。 每个选项卡上都有一个UserControl 。 我想检查来自UserControl B UserControl A上的UserControl x的可见性。 我认为从UserControl B做x.Visible就足够了。 事实certificate,它在调试器中显示为false ,即使我将其明确设置为true并且从未更改过。 然后我在MSDN上阅读Control.Visible : 即使Visible设置为true,如果用户在其他控件后面隐藏,控件也可能无法显示。 令我惊讶的是,这无济于事。 现在我想知道如何判断控件x是否可以从不同的UserControl看到。 如果可能的话,我想避免使用布尔值。 有没有人碰到这个并找到了解决方案? 注意:在这种情况下, Control.IsAccessible似乎也是假的。

覆盖另一个程序集中的内部抽象方法

我目前正在使用另一个.net库的ac#项目。 该库(除其他外)将序列解析为树。 所有项都是从抽象类Sequenceinheritance的某种类型。 我需要稍微改变行为并自己子Sequence (我们称之为MySequence )。 树创建后,我可以用我自己的类的对象替换一些树节点。 现在,已发布新版本的库,并引入了具有以下签名的Copyfunction: internal abstract Sequence Copy(); 我试图将我的代码用于新版本并覆盖它,但无论我做什么,我都会遇到两个错误: MySequence没有实现inheritance的抽象成员’ Sequence.Copy() ‘ 和: MySequence.Copy() ‘:找不到合适的方法来覆盖 这是有道理的,因为它是抽象的( – >必须被覆盖)和内部的( – >由于来自程序集外部的隐藏可见性,它不能被覆盖) 所以,问题是,我明白为什么会这样,但不知道该怎么办。 对我的项目来说,将Sequence子类化是至关重要的。 而我也不明白的是,为什么首先允许internal abstract修改器,因为它基本上允许从程序集外部对整个类进行任何子类化! 有什么方法可以解决这个问题吗? 通过反思或什么? 提前致谢!

如何检查WPF DataGrid中当前是否可以看到滚动?

如何检查WPF DataGrid中当前是否显示滚动(垂直或水平)? Horizo​​ntalScrollBarVisibility和VerticalScrollBarVisibility用于设置行为,它们设置为Auto。

内部类的公共构造函数意味着什么

我已经看到一些C#代码声明了一个带有internal修饰符的类,带有一个public构造函数: internal class SomeClass { public SomeClass() { } } 如果整个类的可见性是内部的,那么拥有公共构造函数有什么意义呢?因此只能在定义程序集中看到它? 另外,如果SomeClass是嵌套类,这是否有意义?

如何以编程方式确定Windows任务栏是否隐藏?

我需要知道Windows任务栏是否隐藏。 我相信没有.NET方法可以做到这一点,而且我也遇到了很多“如何隐藏和显示任务栏”的样本,但我没有看到任何基于我正在寻找的东西。 我不熟悉Windows API,因此我发现很难理解传统的Windows代码。 有人可以指导我一篇文章或输入代码,告诉任务栏的当前状态是否隐藏? 我在C#中编码。 谢谢。