将多个子项添加到WPF会StatusBar导致布局不佳,几乎没有自定义选项.例如,这段代码:
<Window x:Class="StatusBar.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow" Height="350" Width="525">
<DockPanel>
<StatusBar DockPanel.Dock="Bottom">
<StatusBarItem>
<TextBlock>Ready</TextBlock>
</StatusBarItem>
<StatusBarItem>
<TextBlock>Set</TextBlock>
</StatusBarItem>
</StatusBar>
<Label>Main Content</Label>
</DockPanel>
</Window>
Run Code Online (Sandbox Code Playgroud)
结果是:

这不是理想的布局,因为"Set"被挤压到"Ready".
如何完全控制WPF StatusBar控件的布局?
.NET WinForms中的Control和UserControl有什么区别?我想创建一个自定义控件,但我应该继承哪一个?我过去总是使用Control而没有任何问题,但这是创建自定义控件的"推荐"方式吗?
在WPF大多数控件具有MouseUp和MouseDown事件(和鼠标按钮特有的变化),但不是一个简单的Click,可马上使用的事件.如果你想使用这些事件进行类似点击的行为,你需要处理我认为有点痛苦的事件.
最明显的问题是,你不能简单地忽略MouseDown事件,因为如果你点击启动另一个控件,它被释放了,只有处理控制MouseUp你应该点击就会触发,而它真的不应该:两个MouseUp及MouseDown以上相同的控制应该发生.
所以如果有的话,我会对这个一般性问题更优雅的解决方案感兴趣.
注意:有几个很好的解决方案可以在下面看到,我选择接受Rachel的答案,因为它似乎很受欢迎,但另外我想添加以下注释:
Rachel的按钮答案非常简洁明了,但是您需要将实际控件包装在一个按钮中,在某些情况下,您可能不会真正将控件视为按钮,因为它可以被单击(例如,如果它更像是超链接),进一步你需要每次都引用一个模板.
Rick Sladkey的行为答案更直接地回答了如何模拟点击/使控件可点击的原始问题,缺点是你需要引用System.Windows.Interactivity并喜欢Rachel的解决方案,它会夸大Xaml代码.
我的附加事件答案的优点是在Xaml-Markup方面非常接近正常的点击事件,这可以用一个属性来完成,我看到的唯一问题是代码中的事件附件没有干净地封装(如果有人知道修复此问题,请在答案中添加评论).
我正在使用页面,我得到一个Page.IsValid = false,我正在尝试确定哪个控件导致验证问题.
假设我有一个WinFoms项目.只有一个按钮(例如button1).
问题是:是否可以ButtonClicked通过代码触发事件而无需单击它?
在Winforms中,我可以将进度条的ProgressBarStyle设置为Marqee,这样就可以在不必设置的情况下自行设置进度条,对于我不知道要采取多长时间的进程,没有好的方法报告回UI.
我想在WPF中做同样的事情,但我无法找到一种方法来避免托管winform进度条,这似乎适得其反.
我怎样才能在WPF中解决这个问题?我必须主持一个winform进度条吗?
我在Windows窗体中使用WebBrowser控件来显示PDF.
但是,每当重新生成PDF时,WebBrowser控件仅显示其本地缓存版本,而不显示服务器的更新版本.
我正在使用下面显示的Refresh()方法尝试强制控件重新加载PDF,但它不起作用:
_webBrowser.Navigate(pdfUrl);
_webBrowser.Refresh(WebBrowserRefreshOption.Completely)
Run Code Online (Sandbox Code Playgroud)
我是否还必须执行其他操作以强制刷新从服务器重新加载PDF?
在Windows窗体控件中,有两个属性:ReadOnly和Enabled.
这两个属性有什么区别?我觉得他们的行为方式相同.
是否可以确定是否可以看到控件的至少一个像素(通过属性或可能使用事件通知).
注意:即使其他窗口隐藏了控件,我也不会寻找可以返回true的Visible属性
有没有办法限制OrbitControls.js?想象一下,我在地面上创造了一些东西,我不想让相机低于地面,知道我的意思吗?!放大和缩小也是一样的.有没有办法设置一些变量来限制,因为我不希望相机关闭或太远?