可扩展应用程序标记语言(XAML)是一种基于XML的声明式语言,用于在各种框架中初始化结构化值和对象。当问题是关于具有特定框架的XAML的使用时,还应该提供框架的标签,例如, [wpf](Windows Presentation Foundation),[silverlight],[windows-phone],[windows-store-apps](Windows 8商店应用),[win-universal-app],[xamarin.forms]或[工作流程 - 基础]
我希望获得基于数据网格的选定项目计数的可见性。不过,这在winui中似乎不起作用,但在WPF中却工作得很好? 转换器: 公共对象转换(对象值,类型
为什么 MouseLeftButtonUp 在 WPF 中不触发?
为什么 Canvas 上的 MouseLeftButtonUp 在我的 WPF 应用程序中没有触发? 这是 XAML: 为什么 Canvas 上的 MouseLeftButtonUp 在 WPF 应用程序中没有触发? 这是 XAML: <Grid Height="300" Width="400"> <Canvas Name="canvas" MouseMove="canvas_MouseMove" MouseLeftButtonUp="canvas_MouseLeftButtonUp" Background="LightGray"/> </Grid> 代码: private bool hasClicked = false; public Window1() { InitializeComponent(); } private void canvas_MouseMove(object sender, MouseEventArgs e) { if (!this.hasClicked) { this.Cursor = Cursors.None; this.canvas.Children.Clear(); this.insertRectangle(false); } } private void insertRectangle(bool filled) { Rectangle rect = createRect(filled); Point pos = Mouse.GetPosition(this.canvas); Canvas.SetLeft(rect, pos.X); Canvas.SetTop(rect, pos.Y); this.canvas.Children.Add(rect); } private Rectangle createRect(bool fill) { Rectangle rect = new Rectangle(); rect.Height = 50; rect.Width = 120; if (fill) { rect.Fill = new SolidColorBrush(Colors.Green); } else { rect.Stroke = new SolidColorBrush(Colors.Green); } return rect; } private void canvas_MouseLeftButtonUp(object sender, MouseButtonEventArgs e) { this.hasClicked = true; this.insertRectangle(true); this.Cursor = Cursors.Arrow; } 编辑:我尝试向画布添加背景颜色,但事件仍然没有触发。看起来 MouseMove 以某种方式覆盖了 MouseLeftButtonUp。 Edit2:如果我删除 MouseMove 事件,mouseLeftButtonUp 将触发。 Edit3:更大的代码示例。 在insertRectangle方法中,如果我使用 Canvas.SetTop(rect, 50); instead of Canvas.SetTop(rect, pos.Y); 事件发生得很好。 如果你不在画布上设置Background,它似乎不会关注你的鼠标事件。 尝试: <Grid> <Canvas Name="canvas" MouseMove="canvas_MouseMove" MouseLeftButtonUp="canvas_MouseLeftButtonUp" Background="White" /> </Grid> 通过不清除画布,而是在 mouseMove 方法中移动预览矩形解决了问题。 我的解决方案是完全放弃 MouseLeftButtonUp 处理程序,而是对 MouseMove 进行初始检查以查看按钮是否处于释放状态。如果是的话我将拖动设置为 false。 private void Canvas_MouseLeftButtonDown(object sender, MouseButtonEventArgs e) { isDragging = true; } private void Canvas_MouseMove(object sender, MouseEventArgs e) { if (e.LeftButton == MouseButtonState.Released) { isDragging = false; } }
如何使用 MVVM 在 WPF 中正确实现导航侧边栏菜单(+找出更改应用程序中视图的正确方法)?
如果有人可能觉得标题令人困惑,我想道歉,我在这里描述的问题比我想象的要复杂,我很难在标题中总结它。 基础...
如何关闭 ViewModel 中的 49.maui.BottomSheet?
所以我做了一些搜索,尝试询问 ChatGPT,并尝试了几种不同的方法,但我一生都无法让底部的工作表消失。 我有一个名为 CategoryItemPage 的页面 ...
我有一个 C# WinUI 3 桌面应用程序 (VS 2019) - 在数据网格单元格中右对齐文本
使用数据网格。 我想右对齐某些列。 我下面的方法试过了,不行。 有谁知道正确的方法吗? 多谢。 使用数据网格。 我想右对齐某些列。 我下面的方法试过了,不行。 有谁知道正确的方法吗? 非常感谢。 <Grid Grid.Row="2" HorizontalAlignment="Center"> <controls:DataGrid x:Name="Results_DataGrid" AutoGenerateColumns="False" CanUserSortColumns="False" AreRowDetailsFrozen="True" BorderBrush="#005986" BorderThickness="2 2 2 2" Margin="3 10 3 5" PointerReleased="Results_DataGrid_PointerReleased"> <controls:DataGrid.Columns> <controls:DataGridTextColumn Header="Jan" Width="SizeToHeader" Binding="{Binding Jan}" FontSize="11" Foreground="Black" > **<controls:DataGridTextColumn.ElementStyle> <Style TargetType="controls:DataGridCell"> <Setter Property="HorizontalAlignment" Value="Right"/> </Style> </controls:DataGridTextColumn.ElementStyle>** </controls:DataGridTextColumn> </controls:DataGrid.Columns> </controls:DataGrid> ElementStyle 中的 DataGridTextColumn 目标为 TextBlock。 <controls:DataGridTextColumn.ElementStyle> <Style TargetType="TextBlock"> <Setter Property="HorizontalTextAlignment" Value="Right" /> </Style> </controls:DataGridTextColumn.ElementStyle> 我也可以使用 CellStyle 来实现此目的。 <controls:DataGridTextColumn.CellStyle> <Style TargetType="controls:DataGridCell"> <Setter Property="HorizontalContentAlignment" Value="Right" /> </Style> </controls:DataGridTextColumn.CellStyle>
是否有 MVVM 方式(使用 ViewModel)在 XAML 中为 DataGrid 列(DataGridTextColumn 等)使用 x:bind? 我见过的所有代码都使用 Binding 而不是 x:Bind。
无法更改DataGrid Winui3中DataGridColumnHeader的背景颜色
我正在创建一个 WinUI3 项目并使用 Datagrid CommunityToolkit.WinUI.UI.Controls.DataGrid 我无法使用 Setter 更改 DataGridColumnHeader,而 Foreground 更改得很好。我的
是否有某种图形(可能是树或其他东西)可以显示 UWP 中所有控件和元素的所有继承?就像以 object 为根开始,然后延伸到
如何将事件处理程序附加到 DataGrid 组合框选择已更改
使用社区工具包中的 DataGrid。如何绑定事件处理程序来侦听 DataGridComboBoxColumn 中的更改?
如果需要从后台代码访问 WPF 控件,则需要在 XAML 中为其提供 Name 属性。 在许多情况下,您不需要从后面的代码访问控件,因为很多 c...
我有一个网格,在这个网格内部,有一个边框。边框内有一个ListView。我的问题是 ListView 不会根据边框的高度激活垂直滚动。我...
使用其名称从基于它的样式访问样式 ControlTemplate 中的元素
我有一个按钮的样式,比如 ButtonStyle,里面有 VisualStates、属性和触发器。我有另一种基于 ButtonStyle 的样式。我需要访问一个名为“OnhoverGrid”的元素...
我创建了一个 ContentDialog 来应用样式(我无法将其应用于消息对话框和弹出窗口),但我遇到了问题,它不可移动,或者我无法像框架那样关闭它出现
在 .NET 8 的 WinUI 3 项目中找不到命名空间“CommunityToolkit.WinUI.Controls”
在此输入图像描述 我正在使用 WinUI 3 和 .NET Core 8 开发一个应用程序,并安装了 CommunityToolkit.WinUI.Controls,但在尝试使用“设置”时遇到错误...
我想让鼠标悬停在 TextBlock 上时出现文本气泡。 以下代码是我能得到的最接近的代码,但它只是将文本注入 TextBox.Text 本身并更改颜色。我想要...
我正在尝试添加它们在一行中对齐的项目,但是当它们达到最大宽度时,它们会换行。 我用 FlexLayout 和“Wrap”属性来做到这一点,这很好,但我
当系统主题为黑色时,毛伊岛中没有背景的元素的主题无法正确更改
更改操作系统主题时,应用程序通常不会显示所有条目。我尝试更改条目的背景,但随后框架在 iOS 上不可见,如果是 emp...
ItemsWrapGrid 不适用于自定义 UserControl x:bind 未绑定控件属性
在 WinUI3 项目中,下面的 XAML GridView 代码工作得很好。 UserHomeView 中的 UI 被生成,所有依赖于 UserHomeViewModel 的属性和进程都被触发并
x:绑定自定义控件属性时,Bind 在 DataTemplate 内不起作用
在 WinUI3 项目中,下面的 XAML ListView 代码工作得非常好,生成 UserHomeView 中的 UI,并且触发依赖于 UserHomeViewModel 的所有属性和进程,并且