Windows Presentation Foundation或WPF是用于在基于Windows的应用程序中呈现用户界面的子系统。
在网格中的多个 WPF 用户控件之间进行通信(MVVM 应用程序)
嗨,我想通过在 UserControls 中拥有离散的功能单元来扩展我的应用程序,然后将其中的几个放在我的主页上的 ContentControls 网格中。我需要成为...
WindowsFormsHosts 未显示在 WPF 页面上
我正在使用WindowsFormsHosts来制作DataGridView。如果我在单独的窗口上执行相同的操作,则一切都会显示并正常工作,但如果我在页面上执行此操作,则 WindowsFormsHosts 不会显示。
我有一个输入,我希望它只接受我想要的数据类型,例如字符串或双精度。有什么办法可以以编程方式做到这一点吗? 我试过 TextBox 文本 = new TextBox(); 文本.Type = '数字'; /...
我正在处理一个 WPF Powershell 项目(在执行过程中学习并合并相关任务)。我有两个复选框,用于切换通讯组上的外部发件人身份验证。 我想要...
如果这个问题已经得到解答,我提前道歉,但我无法通过一些谷歌得到任何信息。 我有一张带有 8 位颜色配置文件的 Photoshop 图像。我正在将其转换为...
您好,我有一个具有自定义样式的窗口(包括自定义模板),但现在我想在窗口模板布局中定义一些部分,例如 - 窗口标题栏、窗口内容(
如何在没有listview1.Items[0].Refresh()的情况下更改wpf listview项目文本;方法? 我的xaml代码: 如何在没有 listview1.Items[0].Refresh(); 方法的情况下更改 wpf listview 项目文本? 我的xaml代码: <ListView Height="233" HorizontalAlignment="Left" Margin="0,78,0,0" Name="listView1" VerticalAlignment="Top" Width="503" IsSynchronizedWithCurrentItem="True"> <ListView.View> <GridView> <GridViewColumn x:Name="GridViewColumnName1" Header="Files" Width="120"> <GridViewColumn.CellTemplate> <DataTemplate> <Grid Width="{Binding ActualWidth, ElementName=GridViewColumnName1}"> <StackPanel Orientation="Vertical" Grid.Column="1" Margin="8,0"> <StackPanel Orientation="Horizontal"> <Label Content="{Binding ItemsName,Mode=TwoWay}" Name="listnameLB"></Label> </StackPanel> </StackPanel> </Grid> </DataTemplate> </GridViewColumn.CellTemplate> </GridViewColumn> </GridView> </ListView.View> </ListView> 我的代码: private ListViewItemsData ListviewObject; public class ListViewItemsData { public string ItemsName { get; set; } } private void button2_Click(object sender, RoutedEventArgs e) { listView1.Items.Add(new ListViewItemsData() { ItemsName = "ABCD" }); } private void button1_Click(object sender, RoutedEventArgs e) { //ListviewObject = new ListViewItemsData(); ListviewObject = (ListViewItemsData)listView1.Items[0]; ListviewObject.ItemsName = "EFGH"; //listView1.Items.Refresh(); } 我想更改button1事件的“ItemsName”标签内容。 ListViewItemsData类应实现INotifyPropertyChanged并在数据绑定PropertyChanged属性的setter中引发ItemsName事件: public class ListViewItemsData : INotifyPropertyChanged { private string _itemsName; public string ItemsName { get { return _itemsName; } set { _itemsName = value; OnPropertyChanged(); } } public event PropertyChangedEventHandler PropertyChanged; protected virtual void OnPropertyChanged([CallerMemberName] string propertyName = null) { if (this.PropertyChanged != null) this.PropertyChanged.Invoke(this, new PropertyChangedEventArgs(propertyName)); } } (仅)那么这应该有效: ListviewObject.ItemsName = "EFGH"; int index = YourListview.SelectedIndex; // find the selected index ListViewItem dummy = new(); //create new listviewitem YourDataObejct dataObj = new("Apple", "Bannana"); //create your data object wit hthe updated data dummy.Content = dataObj ; // put that obejct in your new listviewitem YourListview.Items[index] = dummy; // add the listviewitem to the listview
我希望 WPF 的默认项目使用确切的系统主题,但 WPF 的默认主题看起来有点类似于 Windows 10,但又不完全一样。如果我有自己的意见的话,那就相当丑陋了。我的追求...
我正在尝试构建类似的东西: 我尝试定义一个包含 3 列的网格(第一列用于文本,最后两列用于 每行中的按钮。 所以在网格内我有一个滚动查看器和......
我正在创建一个程序来模拟回合制战斗,例如 DND 和类似的棋盘游戏和电脑游戏。这是我第一次使用XAML,我研究了很多信息并得出结论...
我正在基于WPF的程序中使用为Winforms开发的控件。 定义如下: 我正在基于WPF的程序中使用为Winforms开发的控件。 定义如下: <WindowsFormsHost Grid.Row="1"> <common:AlertViewer x:Name="alertViewer"/> </WindowsFormsHost> (不确定这是否是使用此类控件的正确方法,但它似乎工作正常。如果您知道更好的方法,请告诉我) 我在 app.xaml 文件中定义了样式,如下所示: <Style TargetType="{x:Type common:AlertViewer}"> <Setter Property="FontFamily" Value="Microsoft Sans Serif" /> <Setter Property="FontSize" Value="8" /> </Style> 我尝试了一些方法,例如从样式定义 x:Key="AlertViewerStyle" 标签并在 AlertViewer 中添加 d:Style="{StaticResource AlertViewerStyle}",但也不起作用。 根据我的尝试,收到了一些错误消息: 无法在类型上找到样式属性“FontFamily” 当删除“d:style”并替换为“style”时,我收到消息: 在“AlertViewer”类型中找不到属性“Style”。 winform 似乎有一个属性“字体”,但不知道在这种情况下如何定义它。 你能帮我算一下吗? 谢谢 您只能在代码后面设置这些属性,因为 WinForms 不支持 DependencyProperty 和 -Object 的概念,而这将是在 XAML 中设置属性值的前提条件。 但是,WindowsFormsHost仍然通过其类型为WindowsFormsHost.Child的System.Windows.Forms.Control属性公开了托管的WinForms控件。通过对该控件的引用,您应该能够像在 WinForms 中一样对其进行编程。 XAML 标记: <WindowsFormsHost Grid.Row="1" Name="AlertViewerHost"> <common:AlertViewer x:Name="alertViewer"/> </WindowsFormsHost> 在 C# 中,例如在代码隐藏文件的 Window.Loaded 偶数处理程序中: var alertViewer = AlertViewerHost.Child as AlertViewer; // make sure to use the Drawing/WinForms classes that often // have the same name as the WPF classes. alertViewer.Font = new System.Drawing.Font ("Microsoft Sans Serif", 8f, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Pixel); 注意:我没有测试过。我不知道它是否能达到预期的效果。
我正在尝试使用箭头键增加文本框中的值。我正在使用 wfp,c# if (ke.Key == Key.Up || ke.Key == Key.Down) ke.Handled = false;//这里需要一个方法 我怎样才能增加...
在 WPF(C# 或 vb.net)中查找我的应用程序可执行文件的位置?
如何在 WPF(C# 或 VB.Net)中找到应用程序可执行文件的位置? 我在 Windows 窗体中使用了此代码: Application.ExecutablePath.ToString(); 但是使用 WPF 我收到了这个错误...
从 WPF 中 RadGridView 内的 RadDatePicker 调用 LostFocus 事件
我有一个 RadGridView,其中有一个 RadDatePicker,我想在该日期的任何更改上触发命令。 我正在努力通过以下方式实现这一目标 我有一个 RadGridView,里面有一个 RadDatePicker 我想在该日期的任何更改上触发 command。 我正在努力通过实现这一目标 <telerik:GridViewColumn Header="Date of Travel" > <telerik:GridViewColumn.CellTemplate> <DataTemplate> <TextBlock Text="{Binding Path=FlightDetails.FltDate, StringFormat=dd-MMM-yyyy}"> </TextBlock> </DataTemplate> </telerik:GridViewColumn.CellTemplate> <telerik:GridViewColumn.CellEditTemplate> <DataTemplate> <telerikControls:RadDatePicker SelectedDate="{Binding Path=FlightDetails.FltDate,UpdateSourceTrigger=LostFocus,Mode=TwoWay, StringFormat=dd-MMM-yyyy}" DisplayFormat="Short" Culture="en-AU"> <i:Interaction.Triggers> <i:EventTrigger EventName="LostFocus"> <i:InvokeCommandAction Command="{Binding DataContext.DateOfFlightCommand, RelativeSource={RelativeSource AncestorType={x:Type baseview:QRUserControl}}}" CommandParameter="{Binding}" /> </i:EventTrigger> </i:Interaction.Triggers> </telerikControls:RadDatePicker> </DataTemplate> </telerik:GridViewColumn.CellEditTemplate> </telerik:GridViewColumn> 没有任何事情被触发。 您的绑定可能无效。如果 DateOfFlightCommand 属性是在父窗口的视图模型中定义的,则应将 Window 指定为 AncestorType: <i:InvokeCommandAction Command="{Binding DataContext.DateOfFlightCommand, RelativeSource={RelativeSource AncestorType={x:Type Window}}}" CommandParameter="{Binding}" />
将GroupBox的数据触发器绑定到其子控件的itemsource
如果其子项(即 ItemsControl)的 ItemsSource 中没有数据,我需要隐藏 GroupBox。 例如。 ItemsControl 将绑定到集合(OptionalReads)。这个的始祖
我有一个 WPF 应用程序,它可以从摄像头、桌面、IP 摄像头等进行录制。 录制桌面时,我想在正在录制的屏幕周围创建彩色边框。是否可以创建...
WPF 设置 DataGrid 动态高度并使用 Horizontal GridSplitter
我正在创建一个包含 2 行网格的应用程序。它的顶行有一个数据网格,底行有一个描述区域。现在我有两个问题: 如果我不设置 DataGrid 的高度
所以,我有一个奇怪的问题。我正在制作一个可以移动鼠标的 WPF 应用程序。我有以下代码: [StructLayout(LayoutKind.Sequential)] 私有结构点 {
防止 WPF ShaderEffect SamplerProperty 调整纹理大小以控制大小
我在 WPF 中有一个带有两个 SamplerProperty 的 ShaderEffect。第一个是采样器寄存器 0 中的隐式输入,第二个(在采样器寄存器 1 中)我传递一个带有简单 PNG 的 ImageBrush 作为其源...