wpf 相关问题

Windows Presentation Foundation或WPF是用于在基于Windows的应用程序中呈现用户界面的子系统。

WPF 动画按钮可以在没有代码隐藏的情况下在第二次单击时反转吗?

我正在使用带 WPF 的 powershell。我有以下示例代码,它生成一个按钮,单击时向右移动即可产生动画,我正在尝试找出接近单击的最佳方法...

回答 1 投票 0

WPF MediaElement 如何从暂停处恢复播放?

我有 2 个按钮,播放和暂停,当我单击暂停时,音乐停止,当我单击播放时,它从头开始播放音频。我想像当我按“播放”时一样,它从我的位置恢复...

回答 3 投票 0

我的 WPF 应用程序无法找到资源“Mainwindow.xaml”

我一直在使用 vb.net 开发 WPF 应用程序,最近遇到了一个问题。 当我构建代码时,构建成功,但是当运行代码时,System.IO.IOexce...

回答 6 投票 0

.NET:如何向 ClickOnce 安装程序添加启动时启动选项

按照使用 ClickOnce for Visual Studio 部署 .NET Windows 桌面应用程序指南,我创建了一个名为 setup.exe 的 ClickOnce 安装程序。是否可以在安装程序中添加额外的步骤...

回答 1 投票 0

如何点击clickonce中的Application Manifest检查应用程序是否安装在电脑上?

我安装了一个clickonce应用程序。 它使用的是 sha1 签名算法。证书过期了,我决定将其更改为 EV Sha384 证书。 我重新签署了我的库和清单

回答 1 投票 0

如何使图像适合 WPF 窗口的整个背景?就像填满窗户一样

所以我尝试拉伸图像,但没有成功。不确定这是否是我想要做的,而且我在网上找不到任何有帮助的东西。 我已经尝试过这个和其他一些方法,但它们不起作用 该...

回答 1 投票 0

SciChart:将 SciChartLegend 移动到应用程序的单独部分

抱歉,如果它看起来像 SciChart 论坛上提出的问题的重复 https://www.scichart.com/questions/wpf/move-settings-from-legend-to-separate-menu 但我没有找到解决方案尚未。也许我...

回答 1 投票 0

旋转我的 Model3D 对象会改变其缩放方式,使用户感到困惑

我有代码来旋转和缩放下面的模型。 我的问题是,在旋转模型后,如果我根据模型的旋转方式来更改宽度、高度或深度,它将无法按预期工作...

回答 1 投票 0

WPF - 全局添加 xaml 命名空间声明

我有一个相当庞大的 WPF 应用程序,其中包含大量 XAML 文件。每个 XAML 文件都有 5 到 10 个 clr 到 xml 命名空间映射 xmlns:abc="clr-namespace:Abcdef"。它看起来很糟糕并且很痛苦

回答 2 投票 0

UWP 类似桌面应用程序

我正在开发一个针对 Windows 10(也许是 11)的应用程序。我的第一选择是WinUI 3。但我意识到有些东西还没有完全实现,有些控件还不稳定(

回答 3 投票 0

WPF PRISM 事件订阅不会消亡

我有一个 PRISM RegionManager,其中有几个区域 - 顶部的功能区区域和其下方用于我的视图的主要内容区域 - 相当基本。 该应用程序从主视图中的“主页”视图开始

回答 1 投票 0

WPF ListView 中的多个 DataGrid

是否可以将多个DataGrid放入ListView中?就像是 是否可以将多个 DataGrid 放入 ListView 中?类似的东西 <ListView ItemsSource="{Binding Schools}"> <DataGrid ItemsSource="{Binding Schools.Teachers}" /> </ListView> 上课地点: public class MainViewModel { public ObservableCollection<School> Schools { get; set; } } public class School { public ObservableCollection<Teacher> Teachers { get; set; } } public class Teacher { public string Name { get; set; } public string ID { get; set; } public string Address { get; set; } public string Ranking { get; set; } } 输出基本上是一个 DataGrid 列表,每个 DataGrid 对应一个 School。 School1 ------------------------------------------------------------------- | Name | ID | Address | Ranking | ------------------------------------------------------------------- | Teacher1 Name | Teacher1 ID | Teacher1 Addr | Teacher1 Rank | ------------------------------------------------------------------- | Teacher2 Name | Teacher2 ID | Teacher2 Addr | Teacher2 Rank | ------------------------------------------------------------------- School2 ------------------------------------------------------------------- | Name | ID | Address | Ranking | ------------------------------------------------------------------- | Teacher1 Name | Teacher1 ID | Teacher1 Addr | Teacher1 Rank | ------------------------------------------------------------------- | Teacher2 Name | Teacher2 ID | Teacher2 Addr | Teacher2 Rank | ------------------------------------------------------------------- 我将如何构建这种显示的 xaml? DataGrid 将在分配给 ListBox 的 ItemTemplate 属性的 DataTemplate 中声明(除非您设置 ListView 的 View 属性,否则使用更简单的基类 ListBox)。 在 DataTemplate 内,绑定将是 ItemsSource="{Binding Teachers}"。 有关详细信息,请参阅数据模板概述。 <ListBox ItemsSource="{Binding Schools}"> <ListBox.ItemTemplate> <DataTemplate> <DataGrid ItemsSource="{Binding Teachers}" /> </DataTemplate> </ListBox.ItemTemplate> </ListBox>

回答 1 投票 0

没有下拉按钮的WPF ComboBox

我想要一个没有下拉按钮但当我单击组合框中的文本时仍然可以打开的组合框。 这可以通过 WPF ComboBox 实现吗?

回答 4 投票 0

使用MailKit从WPF应用程序通过oAuth连接到o365

刚刚启动了一个新的WPF项目,需要连接365进行SMPT和IMAP。 我从 Entra 获得了以下信息 客户端ID 租户ID 秘密值 秘密ID 但我正在努力把这一切放在一起......

回答 1 投票 0

按钮中的多行文本,鼠标悬停在样式上触发

我有一些 wpf 按钮,当我悬停或单击它们时,我想更改它们的背景颜色,所以我创建了这种样式,效果非常好。 <question vote="0"> <p>我有一些 wpf 按钮,我想在悬停或单击它们时更改其背景颜色,所以我创建了这种样式,效果非常好。</p> <pre><code>&lt;Style x:Key=&#34;TestStyle&#34; TargetType=&#34;{x:Type Button}&#34;&gt; &lt;Setter Property=&#34;FontFamily&#34; Value=&#34;Arial&#34;/&gt; &lt;Setter Property=&#34;FontSize&#34; Value=&#34;25&#34;/&gt; &lt;Setter Property=&#34;Foreground&#34; Value=&#34;White&#34; /&gt; &lt;Setter Property=&#34;Background&#34; Value=&#34;Blue&#34; /&gt; &lt;Setter Property=&#34;HorizontalAlignment&#34; Value=&#34;Left&#34; /&gt; &lt;Setter Property=&#34;VerticalAlignment&#34; Value=&#34;Stretch&#34; /&gt; &lt;Setter Property=&#34;Width&#34; Value=&#34;100&#34; /&gt; &lt;Setter Property=&#34;Margin&#34; Value=&#34;10,0&#34; /&gt; &lt;Setter Property=&#34;Template&#34;&gt; &lt;Setter.Value&gt; &lt;ControlTemplate TargetType=&#34;{x:Type Button}&#34;&gt; &lt;Border x:Name=&#34;Border&#34; Background=&#34;{TemplateBinding Background}&#34;&gt; &lt;ContentPresenter HorizontalAlignment=&#34;Center&#34; VerticalAlignment=&#34;Center&#34; /&gt; &lt;/Border&gt; &lt;ControlTemplate.Triggers&gt; &lt;Trigger Property=&#34;IsMouseOver&#34; Value=&#34;True&#34;&gt; &lt;Setter Property=&#34;Background&#34; Value=&#34;Red&#34; /&gt; &lt;/Trigger&gt; &lt;Trigger Property=&#34;IsPressed&#34; Value=&#34;True&#34;&gt; &lt;Setter Property=&#34;Background&#34; Value=&#34;Green&#34; /&gt; &lt;/Trigger&gt; &lt;/ControlTemplate.Triggers&gt; &lt;/ControlTemplate&gt; &lt;/Setter.Value&gt; &lt;/Setter&gt; &lt;/Style&gt; </code></pre> <p>然后,我想使用以下代码向按钮添加文本环绕,也在样式中:</p> <pre><code>&lt;Style x:Key=&#34;fie&#34; TargetType=&#34;Button&#34;\&gt; &lt;Setter Property=&#34;Template&#34;\&gt; &lt;Setter.Value\&gt; &lt;ControlTemplate TargetType=&#34;{x:Type Button}&#34;\&gt; &lt;TextBlock Text=&#34;{TemplateBinding Content}&#34; FontSize=&#34;20&#34; TextWrapping=&#34;Wrap&#34;/\&gt; &lt;/ControlTemplate\&gt; &lt;/Setter.Value\&gt; &lt;/Setter\&gt; &lt;/Style\&gt; </code></pre> <p>有什么提示我怎样才能合并两者而不出现错误吗?</p> </question> <answer tick="false" vote="0"> <p>试试这个:</p> <pre><code>&lt;ControlTemplate TargetType=&#34;{x:Type Button}&#34;&gt; &lt;Border x:Name=&#34;Border&#34; Background=&#34;{TemplateBinding Background}&#34;&gt; &lt;ContentPresenter HorizontalAlignment=&#34;Center&#34; VerticalAlignment=&#34;Center&#34;&gt; &lt;ContentPresenter.Resources&gt; &lt;Style TargetType=&#34;{x:Type TextBlock}&#34;&gt; &lt;Setter Property=&#34;TextWrapping&#34; Value=&#34;Wrap&#34; /&gt; &lt;/Style&gt; &lt;/ContentPresenter.Resources&gt; &lt;/ContentPresenter&gt; &lt;/Border&gt; &lt;ControlTemplate.Triggers&gt; ... &lt;/ControlTemplate.Triggers&gt; &lt;/ControlTemplate&gt; </code></pre> </answer> </body></html>

回答 0 投票 0

列表视图项目选择更改在取消选择时不会触发,使用具有 MVVM 模式的 WPF

我有一个列表视图,它将 SelectionChanged 上的所选项目正确发送到我的视图模块。当选择一个或多个项目时,SelectionChanged 属性会发送选定的项目,但是当

回答 1 投票 0

在 EventTrigger (xaml) 中调用 SystemCommands.MinimizeWindowCommand

我有一个资源字典。该字典中定义了一个按钮。此按钮具有命令 SystemCommands.MinimizeWindowCommand。这是我的简化代码。 有用: 我有一个资源字典。该字典中定义了一个按钮。此按钮具有命令 SystemCommands.MinimizeWindowCommand。这是我的简化代码。 有效: <Button x:Name="PART_ButtonMinimize" Command="{Binding Source={x:Static SystemCommands.MinimizeWindowCommand}}" /> 但是我想用这个按钮调用几个命令。这些命令应该在 xaml 文件中调用,而不是通过 DependencyProperty。 这就是为什么我像这样更改了 xaml 代码(此处仅使用 ResourceDictionary 中的一个命令): <Button x:Name="PART_ButtonMinimize"> <i:Interaction.Triggers> <i:EventTrigger EventName="Click"> <i:InvokeCommandAction Command="{Binding Source={x:Static SystemCommands.MinimizeWindowCommand}}" /> </i:EventTrigger> </i:Interaction.Triggers> 但这不起作用。未调用命令 SystemCommands.MinimizeWindowCommand。 上面它有效,但在 EventTrigger 中没有反应。 如果我使用 InvokeCommandAction 调用 DependencyProperty 命令,那么它就可以工作。 所以 SystemCommands.MinimizeWindowCommand 的调用一定是原因。 有谁知道为什么?我需要改变什么? 谢谢。 InvokeCommandAction 不知道如何调用 RoutedCommand。它只调用 ICommand.Execute 这不足以执行它。 我认为这个功能没有实现,因为它是完全多余的。这是因为路由命令本质上是路由事件。将路由事件转换为路由命令(另一个路由事件)绝对没有意义。 使用交互行为很少是一个好的解决方案。它只会导致奇怪的设计决策。 WPF 提供了所有必要且强大的功能。用平常的方式处理无聊的事情并没有什么错。事件很好,不违反任何设计模式。为什么要费心添加额外的代码来将事件转换为命令? 您必须实现路由命令处理程序。也不要绑定到静态只读 RoutedCommand 属性。只需将静态 RoutedCommand 值分配给 Button.Command 属性即可。 静态 SystemCommands 类定义了路由命令,例如SystemCommands.MinimizeWindowCommand 以及关联的静态处理程序方法 SystemCommands.MinimizeWindow(Window)。 SystemCommands还为其每个命令提供了帮助器:CloseWindow()、MaximizeWindow()、MinimizeWindow()、RestoreWindow()、ShowSystemMenu()): MainWindow.xaml <Window> <Window.CommandBindings> <CommandBinding Command="{x:Static SystemCommands.MinimizeWindowCommand}" Executed="ExecuteMinimizeWindowCommand" CanExecute="CanExecuteWindowCommands" /> </Window.CommandBindings> <Button Command="{x:Static SystemCommands.MinimizeWindowCommand}" /> </Window> MainWindow.xaml.cs partial class MainWindow : Window { private void CanExecuteWindowCommands(object sender, CanExecuteRoutedEventArgs e) => e.CanExecute = true; private void ExecuteMinimizeWindowCommand(object sender, ExecutedRoutedEventArgs e) => SystemCommands.MinimizeWindow(this); } 另一种解决方案是处理 Button.Click 事件并从事件处理程序执行所有必需的操作。

回答 1 投票 0

以编程方式设置 EmbeddedResource 属性

我正在开发一个小型WPF项目,我使用SfMap组件在地图上显示shp文件。为了使它们出现,将文件添加为EmbeddedResource(我从syncfusion获得的信息)。但是...

回答 1 投票 0

如何在 Blend for VS2022 中打开资源窗口?

Microsoft Blend for Visual Studio 中的“资源”窗格似乎已损坏。 我已经确认资源窗格在 VS2017 和 VS2019 中工作。 在 VS2017 和 VS2019 中,它位于:

回答 1 投票 0

在c#/wpf中通过键盘滚动数据网格

我有一个小应用程序,仅使用条形码扫描仪和小键盘。 因此,强制将焦点集中到文本框 (txtInput),并且所有应用程序控制都是通过该文本框的 keydown 事件完成的。 之后

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.