Windows Presentation Foundation或WPF是用于在基于Windows的应用程序中呈现用户界面的子系统。
虽然我已经理解了c#的异步编程,但仍然不明白为什么async with void不是更好的解决方案,然后当我想改进我的Xamarin Forms代码时我发现了很多MVVM框架...
如何构建 TreeView 的 xaml 以使输出如下所示: 永恒的 教师 教师1姓名、教师1停车位号码 教师2姓名、教师2停车位号码
我有一个 C# WPF 应用程序,我需要在其中创建一堆具有不同颜色的图像/文本按钮。为此,我创建了一个从 Button 类派生的 ImageButton。 我希望我的按钮是圆形的
WPF 中的视觉状态是什么?有人知道如何开始、理解和使用它吗?
WPF 中的视觉状态是什么?有人知道如何开始、理解和使用它吗? 也许像一个完整的教程,因为我之前没有接触过Visual State,或者只是一个简单的示例代码。 谢谢。
我有一个 XAML 布局,其中有 StackPanel 中的一系列按钮: 我有一个 XAML 布局,在 StackPanel 中包含一系列按钮: <StackPanel Orientation="Horizontal" MaxWidth="200"> <Button Content="1"/> <Button Content="2"/> <Button Content="3"/> <Button Content="4"/> <Button Content="5"/> <Button Content="6"/> <Button Content="7"/> </StackPanel> 我的目标是让这些按钮在单行中对齐,只要总宽度不超过 200。如果所有按钮的宽度超过 200,我希望它们自动重新排列成两行,每行都有一个偶数如果可能的话,分配按钮。 我尝试过使用 UniformGrid 和 WrapPanel 来满足此布局要求,但它们没有达到预期的效果。可能是我没有正确使用它们。 正如@Yoji 所建议的,包装板应该可以完成这项工作。 已使用以下代码测试并存档您所描述的内容: <WrapPanel MaxWidth="200"> <Button Width="50" Content="1"/> <Button Width="50" Content="2"/> <Button Width="50" Content="3"/> <Button Width="50" Content="4"/> <Button Width="50" Content="5"/> <Button Width="50" Content="6"/> <Button Width="50" Content="7"/> <Button Width="50" Content="7"/> </WrapPanel> 更新: 根据您在评论中的描述,我给您写了一个符合我理解的小控件,应该可以解决问题 public class WrapperPanelExtended : WrapPanel { protected override Size ArrangeOverride(Size finalSize) { var itemsCount = InternalChildren.Count; var MaxItemsPerColumn = (int)(finalSize.Width / InternalChildren[0].DesiredSize.Width); var columntCount = (itemsCount / MaxItemsPerColumn) + 1; MaxItemsPerColumn = itemsCount / columntCount; for (var i = 0; i < InternalChildren.Count; i++) { var location = new Point(i % MaxItemsPerColumn * InternalChildren[i].DesiredSize.Width, i / MaxItemsPerColumn * InternalChildren[i].DesiredSize.Height); InternalChildren[i].Arrange(new Rect(location, new Size(finalSize.Width, InternalChildren[i].DesiredSize.Height))); } return finalSize; } protected override Size MeasureOverride(Size constraint) { var _ = InternalChildren.Count; return base.MeasureOverride(constraint); } } 在你的xaml中 <Local:WrapperPanelExtended MaxWidth="200"> <Button Width="50" Content="1"/> <Button Width="50" Content="2"/> <Button Width="50" Content="3"/> <Button Width="50" Content="4"/> <Button Width="50" Content="5"/> <Button Width="50" Content="6"/> <Button Width="50" Content="7"/> <Button Width="50" Content="8"/> <Button Width="50" Content="9"/> <Button Width="50" Content="10"/> </Local:WrapperPanelExtended>
我想在我的 WPF 应用程序中创建一个与 Windows 窗体中的菜单栏相同的菜单栏。 我该怎么做? WPF控件工具箱中的菜单选项仅给出一个空白栏。
我想在我的应用程序中添加几个自定义按钮,其中包含用于单击和悬停的图标和简单样式(一个模板适用于所有按钮,但图标、颜色等不同)。 h 上的图标应该改变颜色...
c# wpf MVVM 从 ObservableDictionary 获取 ObservableList
我的应用程序速度存在一些问题,并进行了一些性能分析。结果表明,我的应用程序中有很多时间花在 linq 查询上,尤其是......
对于 WPF 和 XAML 非常陌生。我无法理解为什么我不能在以下代码中将 WPF 控件放置在我想要的位置。我的问题是 标签在哪里。任何事...
我就是找不到丢失的那一块。我的 UserControl 不更新绑定属性。我正在后面的代码中创建一个新的用户控件。 SetValue 和 GetValue 方法被调用。如果
我正在 WPF 上使用 LiveCharts 来可视化日志数据。在 Y 轴上,显示双精度列表。 Y 轴的零值(在某些情况下,最接近它的值)呈现为指数...
WPF/Powershell 表单 GUI 可在 Win11 计算机上运行,但不能在 Win 10 上运行
这是一个 powershell GUI MP3 播放器。这是一个较小的半破损版本,真正的脚本开始变大,这使得它不太吸引人来查看帮助,所以我展示......
如何使用 MVVM Community Toolkit for .Net Framework Library
如何在 .Net Framework 库项目中使用自动生成的属性和命令与 WPF 窗口绑定? 问题是 CommunityToolkit.Mvvm 包需要更新的 C#/.net
我正在使用 InstallShield 2022 创建一个 exe。它是 C# WPF 代码。从 InstallShield 创建构建后,当我以管理员身份运行 exe 时,出现的弹出窗口不会显示版权
为什么 File.ReadAllLinesAsync() 会阻塞 UI 线程?
这是我的代码。读取文件行的 WPF 按钮的事件处理程序: private async void Button_OnClick(对象发送者, RoutedEventArgs e) { Button.Content = "正在加载..."; 变种
Unity IOC 容器。如何从创建容器的范围之外的 IOC 容器中解析实例?
我是 IOC 容器新手,我正在尝试了解如何使用它们。我理解这个概念,但我对如何实际应用它有疑问。目前,我正在使用 Unity ioc 容器来
我正在开发一些WPF应用程序,这些应用程序是用C#编写的,基于XAML文件,根据MVVM工作方式进行编程。 编程时,没有什么比 F12 按钮更容易知道您的
列表框不显示数据。列表框出现,但其中没有数据。这是为了重用列表框 对于不同的形式。你能帮忙吗。这只是一个包含一些字符串的列表框。我有 已实施...
在项目模板中找不到Resources.resx文件,继续运行,但生成的项目可能无法正确构建
我正在运行 VS 2022 版本 17.0_50c4cab0 Microsoft Visual Studio Professional 2022(64 位)- 当前 版本17.8.3 微软.Net框架 4.8版本 我收到以下错误消息,...
我正在编写一个 wpf 窗口,它有一个自定义的最小化按钮和关闭按钮,而不是默认的按钮,同时它不应该调整大小。只需设置 WindowStyle=None 和 ResizeMode=NoResiz...