Wpf F#以编程方式创建用户控件:缺少更新(键盘输入似乎已锁定)

我曾尝试仅通过代码创建“UserControl”,使用F#(版本12.0.30815.0+framework4.5),因为我更喜欢这种“方式”(C#和F#之间没有混合) 注意:我必须在一个输入表单中显示单个类的多个属性,因此这个UserControl需要实现绑定功能,以将“输出”连接到类的属性 我试图修改窗口内的数值(即1200或400),或使用键盘上的TAB键在控件之间移动焦点,但所有操作似乎都被锁定 无法更新数值。我只能删除一个或多个单一的数字,没有任何更新 也许在我在UserControl

Wpf 自动将ListBoxItem的部分聚焦于所选内容

我有一个列表框,它是从ViewModels集合中填充的,它使用就地编辑,我通过使用两种样式来实现这一点,我可以将这些样式应用到DataTemplate的某些部分,使它们根据需要可见/折叠。这些看起来像: <Style x:Key="UnselectedVisibleStyle" TargetType="{x:Type FrameworkElement}"> <Setter Property="Visibility" Val

Wpf 如何在不同的线程中保持窗口位于另一个窗口的顶部?

我有一个叫做“MyForm”的WinForms表单,它通过ElementHost托管一些WPF UI。我在主UI线程之外的单独线程上显示此表单 我希望“MyForm”保持在主应用程序窗口的顶部,因此我使用Show方法的ShowIWin32Window重载显示表单,传入的IWin32Window是主应用程序窗口 该窗口通过“启动器窗体”间接显示,启动器窗体是单独STA线程(传入application.Run的线程)的“应用程序窗体”。原因是通过Application.Run启动表单时无法指定所有者

Wpf 我有两个带有图像的列表框。我想在第二个列表框中使用第一个列表框的图像时隐藏该图像

我有两个带有图像的列表框。我想在第二个列表框中使用第一个列表框的图像时隐藏该图像。我还想知道我在第二个列表框中添加图像的中午时间。在第二个列表框中,图像应显示图像本身上该图像的计数该图像添加的图像数。 有什么建议吗 提前感谢您是否正在尝试创建选择列表

wpf密码框插入符号

如何使用WPF将密码箱控件与虚拟键盘一起使用?使用textbox控件,只需将插入符号移动到下一个文本位置就相当简单;而passwordbox则不然,它不会暴露插入符号的位置 我应该自己推导吗?看起来像淡酱汁。您可以尝试以下方法来设置密码框中的选项: private void SetSelection(PasswordBox passwordBox, int start, int length) { passwordBox.GetType().GetMethod("Select", Bi

Wpf 如何将文本框绑定到纯字符串集合

作为大数据模型的一部分,我需要显示/编辑一个字符串集合,如observetecollection定义。在prototype应用程序中,我们使用列表视图显示整个集合,并使用文本框编辑所选元素。文本框应绑定到集合的当前元素。由于GUI可能会发生更改,我无法使用直接绑定 我试着用 <TextBox Text="{Binding Path=/, UpdateSourceTrigger=PropertyChanged}"/> 但它只在一个方向上起作用,更改listview当前项会导致更新

WPF-从子页面调用窗口函数

我有一个使用dockpanel和菜单控件的WPF窗口。我有基于用户ID创建菜单选项的代码 在这个窗口中,我有一个包含WPF页面的框架。我在页面上执行所有身份验证,然后为窗口使用一个用户ID。但是,我无法让父窗口“刷新”并使用新的ID信息创建菜单栏。当窗口加载时,我不会运行命令来显示菜单栏。我试着把它放在它自己的公共函数中,并从页面上调用它,但这似乎不起作用 必须有一个我缺少的窗口方法,它可以根据页面的调用显示菜单栏。听起来您仍然在以WinForms风格按程序思考。您所描述的内容在WinForms

WPF组合框下拉列表放置

我有一个ContentControl,从左到右由按钮、分区和组合框组成。我希望ComboBox下拉列表与控件的左侧对齐,而不是与ComboBox的左侧对齐。似乎找不到关于相对位置等的文档。有人处理过这个问题吗?TIA我以前也做过类似的事情-我最终从ComboBox派生,获得控件的弹出部分并使用来定位它。像这样的 class MyComboBox : ComboBox { public override void OnApplyTemplate() { base.O

Wpf 处理ObservableCollection CollectionChanged事件

我在Silverlight toolkit中看到过类似以下的代码,但无法理解这样做的安全性: private void ItemsSourceCollectionChanged(object sender, NotifyCollectionChangedEventArgs e) { // Update the cache if (e.Action == NotifyCollectionChangedAction.Remove && e.OldItems != nu

Wpf FlowDocumentScrollViewer中的水平滚动

我有一个从图纸创建的图像流文档。我已经为用户提供了一个按钮,可以在不缩放文本的情况下独立放大图像 无论如何,我可以强制FlowDocumentScrollViewer显示一个水平滚动条,以便在图像放大时滚动吗?目前,放大的图像被简单地剪掉 致以最良好的祝愿, Paul。找到了答案,设置文档的页面宽度就可以了

如何在WPF文本块中设置文本换行(悬挂,如MS Word)的样式

我需要设计一个WPF文本块,比如 <TextBlock Text="- Test text text text text" TextWrapping="Wrap"/> 而不是 - Test text text text text 您知道问题的解决方法吗?如果您需要对文本应用高级本地格式,您最好使用一个RichTextBox,它将为您提供更多的控制。您能将其拆分为两个文本块吗:一个带有“-”,第二个带有“测试文本”?这样你就能达到你的要求 (哈哈:),刚看到:5年前问过)不幸的是

Wpf 在运行时使用PropertyValue编辑器

我试图构建一个WPF控件,允许用户在运行时PropertyGrid的上下文之外编辑非特定类型的值。WinForms PropertyGrid使用UITypeEditor,可以通过相关的TypeDescriptor方法在运行时获取和使用这些编辑器 另一方面,VisualStudioPropertyGrid使用PropertyValue编辑器。Microsoft建议使用所谓的“元数据程序集”,以便将类型与visual editor关联,但这种方法只对visual Studio用户有利,因为此类程序集

wpf可见性问题

默认可见性枚举包含 Collapsed Hidden Visible 我需要另一个名字不可创建。将可见性设置为Notcreatable时,当前图元不得在视图级别上创建 因为我有两个类继承自 public Class B:A { Property B1;} public Class C:A { Property C1;} 我的xaml <stackpanel DataContext="{Binding objectA}"> <stackpanel Visiblity=

未使用SizeToContent正确计算Wpf网格行高度

在下面的示例中,有两行高度分别为6*和4*。问题是,只有在用户更改窗口大小后,才能计算正确的行高度。 这仅在设置了SizeToContent标志时发生。 你知道为什么吗?如何强制窗口在加载时自动计算高度 <Window x:Class="TestGridRow.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.micros

Wpf 如果数据绑定未通过验证,如何获取原始值

我有一个使用DataGrid的WPF对话框。数据网格设置为具有ItemsSource={Binding SomeCollection,Mode=TwoWay}。此设置工作正常,我可以读取值并从UI更新它们 后来我添加了转换器来验证值。当验证失败时,我显示空白。现在我感兴趣的是在验证失败的情况下恢复原始值 这里有哪些选项?我从未使用转换器进行验证。相反,我使用实现IDataErrorInfo的项,该项在ValidateSondaErrors=True的数据绑定属性中具有一个属性 使用这种验证方法,

Wpf 依附性问题

我很困惑 我正在创建一个具有dependencyProperties的控件,它不是我可以在控件中绑定的属性,但是如果属性发生更改,我需要更改控件的视图,并在设计模式下显示它 我已经做了PropertyChangedCallback,如果有什么变化,它就会工作。但是!如果我在使用此控件时打开窗体,则此属性中有一些值-在设计窗口中没有任何更改。。。若我改变了一些东西——PropertyChangedCallback被激发,我可以在设计窗口中看到更新 但这并不是唯一的问题——在编译和运行我的应用程序后

Wpf 具有嵌套属性的DataGrid绑定集合

我有一个人和地址类。Person类具有名称、性别等属性和地址。Address类将Street、City等属性作为字符串。如果我有一个叫做“人”的人的集合,这是一个“人”的列表。我将人们绑定到WPF中的数据网格。“名称”列可以,但“城市”列始终为空 Class Address Sub New() End Sub Private _city As String Property City() As String Get Return _city End Get Set(ByVal value As

Wpf 错误:命名空间“”已包含“AboutDialog1”的定义

我是WPF的新手。 我正在练习WPF释放的示例代码。 当我试图实现附加的事件时,我将Xaml文件中的类名修改为不同的类名,这与新页面的命名空间相同,我是调试器 投诉此错误: 错误1命名空间已包含“AboutDialog1”的定义 有人能告诉我为什么我会犯这样的错误吗 我的代码: <Page xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.mi

在WPF中双击DataGrid时,如何在鼠标位置获取项目?

我是WPF新手,我有一个关于DataGrid的问题,当我双击DataGrid时,如何在鼠标位置获取项目?您可以使用和订阅双击事件,对于行使用,对于特定单元格使用 在处理程序中,您可以将发送者分别强制转换为DataGridRow或DataGridCell @H.B.太好了!它解决了我的问题。很高兴听到这个。如果你想保留这个问题,它应该有一个正确的答案,为此,我现在添加了一个。。。

如何在WPF中推动类似iPhone的拖动滚动滚动查看器

我有一个scrollviewer,它包含许多按钮和表单。现在我想让这个应用程序像iPhone一样在触摸屏电脑上滚动 我一直在尝试修改本教程: 实现双击选择列表项。但是,我更希望使用单键单击,因此我更改了以下代码: // initial source code values // this registers the double click isMouseDoubleClick = (e.ClickCount>1); 我把它改成 // Get initial position of t

Wpf LabeledPichart:样式覆盖数据模板

我已经定制了LabeledPichart(来源:)的模板。然后,我为LabeledPieChart的切片创建了一个数据模板。如果单独使用样式和DataTemplate,则两者都非常有效。如果它们在一起,样式将覆盖DataTemplate,因此没有任何效果。有可能把这两者结合起来吗? 这是我的代码(样式和数据模板在Window.Resources中): 风格: <Style TargetType="customControls:LabeledPieChart" > &l

Wpf 滚动后边框颜色不一致的原因是什么?

我们注意到WPF应用程序中存在一些奇怪的行为 我们有一个定制的、类似于扩展器的UserControl,它周围有一个边框,我们称之为expander。一个视图中可以有几个这样的扩展器,这意味着需要滚动。当一个扩展器从视图中滚出来,再滚回来时,边框有时会改变颜色。不是每次,也不是始终如一。例如,下边框的颜色可能稍浅,而右边框的颜色可能较深,即使它们使用相同的画笔。下次它从视图中滚出来,再滚回来,颜色可以恢复正常 它看起来几乎像缩放/抗锯齿效果。还有其他人见过这种行为吗?我们能做些什么吗 使事情稍微复

Wpf url sharepoint列表camlquery

我正在尝试从sharepoint收集我的url和存储在列表列中的url描述,但我不知道如何收集url值 这是我的代码: var queryResultSaleListItems = clientContext.LoadQuery(listData); clientContext.ExecuteQuery(); //Read the Data into the Object var TipsList

WPF ObjectDataProvider和组合框

我已经上网好几天了,试图弄明白这个问题,虽然我对ObjectDataProviders的工作原理有了很多了解,但我仍然无法解决这个问题。。。我正在尝试使用ObjectDataProvider访问viewmodel中的方法。在组合框中更改选择后,此方法应检查表单数据是否已编辑。如果有,将询问用户是否希望在选择更改之前保存编辑的信息。我似乎无法将两者联系在一起-组合框列表和方法。。。我可以让组合框正常工作,但前提是我指定ItemsSource并选择EdItem verbatim。这些值是加载其余表单

Wpf 什么控件可以用来显示txt文件以及pfd和.doc

我对windows窗体编程比较陌生,正在寻找一个可以同时显示.txt、pdf和doc文件的控件。当我第一次开始在谷歌上搜索解决方案时,我被引导到使用wpf xps控件的可能性,但我必须找出如何将其集成到win form应用程序中,并且仍然不清楚它是否能解决我的所有问题。对此的任何指导都将不胜感激 谢谢大家! 一般来说,我不会这么做(试着找到一个可以做任何事情的控件)。相反,我会考虑为不同类型的内容创建不同的控件,并根据显示的内容切换控件上的可见状态。我也考虑过这一点,但我希望这里可能有人使用了x

Wpf 隧道命令

我有几个在列表框中实例化的用户控件。我的窗口中有一个按钮,用于引发NavigationCommands.Refresh,还有一个CanExecute处理程序,允许它执行: <Window.CommandBindings> <CommandBinding Command="NavigationCommands.Refresh" CanExecute="CanAlwaysExecute" /> </Window.CommandBindings> 隧道命令

在Bing WPF控件中更改贴图模式

以下是我的XAML代码: <s:SurfaceWindow x:Class="map_test.SurfaceWindow1" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:s="http://schemas.microsoft.com/surface/2008" xmlns:m="c

Wpf 使用PRISM和MVVM的ViewModels参数化构造函数

我正在尝试在PRISM模块上使用MVVM。我的模块中有一个带有参数化构造函数的ViewModel,该构造函数接受将使用Ninject注入的IOutputService对象 namespace HelloWorld.ViewModels { public class HelloWorldViewModel : ViewModelBase { private IOutputService outputService; public HelloWorl

Wpf 单击按钮时在列表框中添加项目失败

我是MVVM的新手。我有两个网格位于主窗口的内侧,其中一个网格包含左侧的列表框,另一个网格位于右侧,包含列表视图和两个按钮 我能够将项目添加到listview,甚至知道如何从列表视图中获取所选项目。在列表视图中选择项目并单击按钮(连接)后,左侧的列表框将使用我从viewmodel类中添加的项目进行更新 下面的视图显示了我左边的列表框: <Grid Grid.Column="0" Name="BoardTabSelect" HorizontalAlignment="Stretch" Vert

Wpf 如何使用静态方法作为CallMethodAction的目标? xmlns:i=”http://schemas.microsoft.com/expression/2010/interactivity" xmlns:ei=”http://schemas.microsoft.com/expression/2010/interactions"

在启动时引发异常。CallMethodAction能调用静态方法吗?你不能包装静态方法吗?如果它是静态的,那么应该可以通过DataContext对象(您绑定到的对象)甚至是隐藏的代码(可能不是它的最佳位置,但可能是这样)。只是一个想法。这不是真正的重点,当然你可以把它包装起来,但如果没有必要,那么为什么要做额外的工作,仅仅因为我们不知道做这件事的内在方式?同意。这就是为什么我发表了评论,但没有试图回答。 xmlns:i="http://schemas.microsoft.com/expressi

WPF mvvm向导

我正在实现WPF MVVM向导,我想知道在加载新向导的页面(UserControl)时执行DoOperation的正确方法 DoOperation在MyWizard.viewmodel类上实现,而UserControl加载在MyWizard.View命名空间上进行 如何将加载的UserControl事件连接到DoOperationapi 我尝试了以下方法: <xmlns:i="clr-namespace:System.Windows.Interactivity;assembly=Syste

Wpf 网格状控件,用于.net的单元级自定义

我正在寻找一个类似网格的控件,可以是WinForm,也可以是WPF。 我有一个名为PropertyInfo的类数组集合。此类将PropertyValue和PropertyType作为属性公开PropertyValue可以是任意对象。这个数组集合需要显示在网格布局中,我需要控制每个单元格。例如,基于属性类型,单元格可以是组合框、复选框或超链接单元格,甚至可以是只读单元格。因此,我需要通过迭代每个项中的集合和数组值,在代码隐藏中创建单元格。 其他要求包括: 应该是免费的或标准的.net控件 应在.n

WPF对象绑定UI控件

作为WPF的新手,我对DataGrid在绑定到ViewModel中的对象集合时自动生成列的能力印象深刻 该特性提出的一个问题是,是否存在可以绑定到单个对象实例的类似控件。这将使用基于类型的适当控件从对象“自动生成”输入表单 我所看到的最接近这一点的是Django的出色能力,它可以根据基础模型生成表单,并伴随验证。自动生成-否,但使用DataTemplate,您可以可视化所有需要的对象

当内容适合窗口时,如何在wpf中隐藏滚动条?

如果未启用滚动条(当内容适合窗口时),我如何隐藏滚动条?我尝试使用is enabled属性,但没有起作用。我假设您有一个滚动查看器,您只想在需要时显示滚动条 在这种情况下,您可以设置: VerticalScrollBarVisibility="Auto" HorizontalScrollBarVisibility="Auto" 我假设您有一个ScrollViewer,您只想在需要时显示Scrollbars 在这种情况下,您可以设置: VerticalScrollBarVisibility="A

DataGrid格式中的WPF RichTextBox出错

我需要在DataGrid的列中使用RichTextBox。这是通过xaml实现的 <DataGrid x:Name="ui_tblInputs" Grid.Row="0" Grid.Column="2" Grid.RowSpan="3" AutoGenerateColumns="False" HeadersVisibility="Column" CanUserSo

Wpf 在XAML中将一个资源整数设置为另一个?

是否可以在XAML中将一个System:Int32资源设置为另一个 我想做以下几点: <System:Int32 x:Key="SomeValue">9999</System:Int32> <System:Int32 x:Key="MoreSpecificValue"> <StaticResource ResourceKey="SomeValue"/> </System:Int32> StaticResource不得尝试

在另一个WPF窗口中宿主WPF窗口

这是我的问题:我在XAML(vb.net)中创建了一个名为mainWindow的主窗口,里面有两个按钮(valid和stop),中间有一个网格。 我还有另外两个用XAML(vb.net)编写的小窗口(有效窗口和停止窗口),它们有按钮、文本框 我希望,当我单击有效按钮或停止按钮时,在我的mainWindow的网格内显示有效窗口或停止窗口,因此我在mainWindow.vb中有以下代码: enter code here Private Sub valid_Click(ByVal sender As

在WPF中创建设计时数据

我的MainWindow.xaml加载速度非常慢,因此我正在尝试为此创建一个设计时数据。我在网上查看了一些网站,并试图创建设计时数据,但它给出了错误。 这是我的xaml部分,其余部分是wpf元素: <Window x:Class="CodeFirstMVVM.App.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://sch

wpf和mvvm:link 2用户控件

如标题中所述,我想链接2个用户控件。 一个是列表,另一个是列表的详细信息。 我想根据在第一个用户控件中选择的行刷新“详细信息”用户控件 有没有办法做到这一点?您可以在公开所选项目的列表控件上拥有DependencyProperty。然后将其绑定为第二个控件的DataContext public YourType SelectedItem { get { return (YourType)this.GetValue(SelectedItemProperty); } set { this.S

Wpf 当项目计数超过400个项目时,Listview无法显示列表项目的文本

我注意到,当项目数量超过400项时,我的应用程序中的Listview无法显示Listview项目的文本 我的猜测是,这是手机的内存问题,而不是大型设备的模式 我假设我只需要添加listview的itemsource所基于的项目的一小部分 管理负责显示大量数据的listview的最佳方法是什么 这是我的XAML: <ListView x:Name="ContactList" ScrollViewer.VerticalScrollBarVisibility="Visible"

WPF可观测集合

我在视图模型中有一个ObservableCollection,它绑定到视图中的DataGrid,但如果有人添加新行或修改现有行,则不会触发它的CollectionChanged事件 public void onCollectionEventFired(object sender, NotifyCollectionChangedEventArgs e) { if (e.NewItems != null) { } if

Bing经纬度点的WPF半径

我在Bing地图WPF上有多个位置,通过经纬度坐标进行定位,我知道如何测量两个设置位置之间的距离,并一次显示所有的定位。但是为了提高效率并减少地图上所需的延迟,我只想显示距离固定点一定距离内的点 例如,大本钟位于51.500733,-0.124658是我的固定点,如果我的另一个位置在半径为5英里的范围内,例如伦敦眼51.503364,-0.119522,它将显示,但半径以外的任何位置都不会显示。当前,当用户单击“我的一个点”上的单个按钮时,该过程被激活,然后显示一个图钉。目前,我专注于在VB中使

WPF MVVM ViewModel包含未更新的ViewModels

我是WPF和MVVM的新手,这让我很头疼。由于导航方面的问题,我决定让我的所有内容立即可见。我想我会创建一个新的ViewModel MainViewModel来包含另外两个ViewModel StudentViewModel和AddStudentsViewModel MainViewModel包含如下内容: private StudentViewModel _studentVM; private AddStudentsViewModel _addStudentsVM; public Stude

Wpf 如何使用mvvmlight处理依赖项注入

我不知道如何在MainWindowViewModel的构造函数调用中注入参数。我想在viewmodellocator中注册当前主窗口的一个实例。我怎样才能做到这一点 这是我在viewmodellocator类中的情况: public ViewModelLocator() { ServiceLocator.SetLocatorProvider(() => SimpleIoc.Default); //SimpleIoc.Default.Register<Window&g

Wpf 没有资源和模板的XAML代码是否可能?

我找到了一个, 这也定义了一个拇指轨迹 是否可以在没有资源和模板的情况下对其重新编码 谢谢你的评论 我已经做了 这里是没有模板和样式引用的XAML代码 对于带有轨迹和拇指的滑块 <Slider x:Name="slidExample" VerticalAlignment="Center" TickFrequency="37.5" Minimum="0" Maximum="600" Value="500" Width="300" Margin

WPF从同一线程中的另一个窗口更新窗口的UI控件

假设我分别定义了两个名为WindowA和WindowB的窗口 WindowA有一个名为btn的按钮 WindowB有一个名为processLbl的标签 当用户单击WindowA中的按钮时,将显示WindowB并执行一些逻辑 WindowB windowB; private void btn_Click(object sender, RoutedEventArgs e) { windowB = new WindowB(); windowB.Owner = Application.