草庐IT

c# - WPF 验证取决于必填/非必填字段

我是WPF开发的新手,但我正在考虑如何用一block石头杀死3只鸟。示例:我有一个包含2个文本框和2个文本block的表单。第一个“鸟”将能够“丰富”一些带有星号的文本block,如果它们引用必填字段:然后TextBlock将以不同方式显示其文本,第一个将带有星号,而未定义自定义属性的则不会。第二只鸟是对文本框的值进行某种验证,如果我理解正确的话,这是通过使用CustomValidationRule完成的,我为此实现了一个类:classAgeController:ValidationRule{publicoverrideValidationResultValidate(objectva

c# - 防止 WPF 4.0 Datagrid 显示空列

我有一个带有1列数据网格的应用程序(目前)。如何从数据网格中删除第二个空列,以便数据网格中仅显示包含数据的列。 最佳答案 正如vorrtex在评论中所说,最好的办法可能是设置列宽以填充所有可用空间:...根据您使用的容器,您还可以将网格对齐到左侧,在其右侧留出空白空间:...希望这就是您要找的... 关于c#-防止WPF4.0Datagrid显示空列,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/q

c# - XAML 绑定(bind)到带有参数的静态方法

我有一个像下面这样的静态类:publicstaticclassLang{publicstaticstringGetString(stringname){//CODE}}现在我想在xaml中以绑定(bind)的形式访问这个静态函数。有没有这样的方法例如:或者是否有必要为每个可能的参数创建一个ObjectDataProvider?希望有人能帮助我。提前致谢! 最佳答案 我也有这个需求。我使用转换器“解决”了(如建议的here)。首先,创建一个返回翻译字符串的转换器:publicclassLanguageConverter:IValueC

c# - 选项卡上的文本框 SelectAll 但不是鼠标单击

假设我有一个带有多个文本框的WPF表单,如果您切换到文本框并且其中已经有内容,我想选择该框中的所有文本,以便键入将删除该文本。如果您在框上单击鼠标,则可能意味着您要更改某处的字母,因此在这种情况下不要突出显示所有字母。看起来很容易,但到目前为止我还没有一个好的解决方案。到目前为止,这是我所拥有的,非常接近工作,但还不够完美。privatevoidEventSetter_OnHandler(objectsender,RoutedEventArgse){TextBoxtxt=senderasTextBox;if(txt!=null)txt.SelectAll();}因此,当框获得键盘焦点时

c# - 两侧具有不同笔划粗细的 WPF 矩形或具有虚线笔划的边框?

我知道我可以创建一个带有矩形的虚线边框,或者为不同的边创建一个具有不同描边粗细的边框:无论如何我都可以实现:?更新:这需要填充其父项中的空间(与我的固定大小的示例不同),例如一个Grid-所以一个具有固定大小的DrawingGeometry和我自己的Pen不能用来实现这个..可以吗? 最佳答案 试试这个:它是边框,所以当放在网格内部时,它会使用可用空间,你可以为每一边设置不同的宽度,它使用矩形作为视觉画笔,所以你可以轻松地将边框设置为虚线。 关于c#-两侧具有不同笔划粗细的WPF矩形或具

c# - 如何在 ListView 的组标题中保存 IsExpanded 状态

我有一个相当棘手的问题:我正在使用ListView控件,其中ItemsSource设置为CollectionViewSource,包括PropertyGroupDescription以对ListView元素进行分组。CollectionViewSource看起来像这样:在ListView中,我使用如下自定义组标题:如您所见,Expander的IsExpanded属性设置为true。这意味着每当ListView刷新时,所有Expander控件都会展开。但是我确实想保存每个Expander的最后状态。我还没有想出一种方法来保存每个ObjectType的扩展器状态列表。我正在尝试使用绑定(b

c# - 基于 XAML 中的值显示图像

这个问题在这里已经有了答案:BindIcondependingonEnuminWPFTreeview(3个答案)关闭9年前。如何根据XAML中的值显示图像?我有性别枚举[DataContract(Name="Gender")]publicenumGenderEnum{[EnumMember]NotSpecified,[EnumMember]Male,[EnumMember]Female,}在我的模型类中,我有一个名为“性别”的枚举类型的属性。现在我想通过XAML端显示基于“性别”值的图像。

c# - Windows 10 ScrollIntoView() 没有滚动到 ListView 中间的项目

我有一个包含20个项目的ListView。我想以编程方式滚动Listview。ListView?.ScrollIntoView(ListView.Items[0])将ListView滚动到第一个项目。ListView?.ScrollIntoView(ListView.Items.Count-1)会将ListView滚动到页面底部。但是,我无法使用相同的功能将ListView滚动到中间的项目。Eg:ListView?.ScrollIntoView(ListView.Items[5])应该滚动并将我带到列表的第5项。但它会将我带到列表的第一项。如果可以通过一些变通办法实现此行为,那会很棒吗

c# - Xamarin 表单如何重叠?

z-index有没有概念?图片显示没有重叠。如何设置z-index?前两个自定义选择框还有其他的。图表、数据等...BoxSelector.xaml(contentview),可重用的ContentView扩展#f9f9f9#e2e2e2 最佳答案 Z-Index是根据容器元素中子元素的顺序建立的。第一个child在Z堆栈的后面,第二个child放在它上面,依此类推。您使用的布局容器将决定每个子项的定位方式。StackLayout不允许重叠。AbsoluteLayout和RelativeLayout将允许轻松重叠。Grid将允许延伸

c# - xaml 中的条件元素取决于绑定(bind)内容

仅当Address.Length>0时,是否可以显示此TextBlock?我想直接在xaml中执行此操作,我知道我可以以编程方式放置所有控件 最佳答案 基本上,您需要编写一个IValueConverter这样您就可以将TextBox的Visibility属性绑定(bind)到Address字段或您创建的新字段。如果您绑定(bind)到Address字段,绑定(bind)可能如下所示::然后StringLengthVisiblityConverter看起来像这样:publicclassStringLengthVisiblityConv