Loading

随笔分类 -  WPF

用于发表WPF相关的界面设计与模式设计等
摘要:一、背景介绍 ​ 在开发过程中,经常使用到画笔Bursh。在WPF中,画笔可用于描述按钮的背景、文本的前景和形状填充等。 下面将整理一下各种画笔的作用与使用方法。 二、画笔Brush介绍 大多数视觉对象都允许你指定如何绘制它们。 下表列出了可以使用 Brush 的一些常见对象和属性: 类 画笔属性 阅读全文
posted @ 2024-01-04 14:54 Dwaynerbing 阅读(691) 评论(0) 推荐(0)
摘要:# 1、使用 Cursor属性设置鼠标形状 ```xaml ``` 鼠标形状的枚举数值如下所示: ```C# public enum CursorType { None = 0, No = 1, Arrow = 2, AppStarting = 3, Cross = 4, Help = 5, IBe 阅读全文
posted @ 2023-06-02 10:06 Dwaynerbing 阅读(1738) 评论(0) 推荐(0)
摘要:在开发多语言版本时,我将界面显示的文本保存在语言资源zh.xaml和en.xaml中,但程序启动,加载语言资源时是外部的配置文件决定的,因此语言资源我无法添加在App.xaml文件中,而开发单个 XAML 界面时,设计器将会因为找不到资源文件的存在,而拿不到资源,每次遇到语言相关的资源键值,都需要手 阅读全文
posted @ 2023-04-21 09:47 Dwaynerbing 阅读(496) 评论(1) 推荐(3)
摘要:1、问题描述 一般,当我们需要展开TreeView控件的某一节点时,可以在TreeView控件的TreeViewItem所绑定的数据结构上增加一个bool属性,然后与TreeViewItem的IsExpand属性相绑定,再将该数据属性置为true即可展开该节点。 ​ 但当数据结构不方便扩展增加属性时 阅读全文
posted @ 2023-03-28 16:39 Dwaynerbing 阅读(443) 评论(0) 推荐(1)
摘要:1、WPF使用画像画刷(ImageBrush) <Grid> <Grid.Background> <ImageBrush ImageSource="1.png" Stretch="None" TileMode="Tile" ViewportUnits="Absolute"> <ImageBrush. 阅读全文
posted @ 2023-02-22 22:46 Dwaynerbing 阅读(158) 评论(0) 推荐(0)
摘要:一、ContextMenu数据绑定问题 例如,我们将数组绑定到ListBox控件上,在其数据模板上添加ContextMenu实现每项选中删除功能。首先,声明如下所示的ViemModel: public class MainWindowVM : INotifyPropertyChanged { pub 阅读全文
posted @ 2022-12-21 10:26 Dwaynerbing 阅读(1158) 评论(0) 推荐(0)
摘要:一、WPF里ItemsControl的分组实现 我们在用到ItemsControl时,有时会用到分组。如下图所示,绑定一个数组如下所示: 数据类型为: public class Student { public int Id { get; set; } public string Name { ge 阅读全文
posted @ 2022-10-30 15:16 Dwaynerbing 阅读(1386) 评论(0) 推荐(0)
摘要:一、问题描述 对于 Button 等控件,在 MVVM 中我们能通过 Command 绑定解决 Click 事件。具体如下所示: <Button Margin="10" Height="50" Content="Clear" Command="{Binding Path=Clear}"></Butt 阅读全文
posted @ 2022-08-14 15:08 Dwaynerbing 阅读(745) 评论(0) 推荐(2)
摘要:一、PasswordBox的SecurePassword属性 正常的String类型值,在脱离开作用域之后,其值在内存中并不会被立即销毁,这时如果有人恶意扫描你的内存,程序中所保存的机密信息就会暴露;于是就有了System.Security.SecureString,SecureString表示一个 阅读全文
posted @ 2022-06-26 22:57 Dwaynerbing 阅读(2065) 评论(0) 推荐(0)
摘要:一、C#静态构造函数抛出异常 静态构造函数内部抛出异常时,此异常会被包起来,重新成为一个新的异常抛出,异常信息是“xxx的类型初始值设定项引发异常”,内部的异常则是之前抛出的异常。测试如下: class Test { static Test() { throw new System.Exceptio 阅读全文
posted @ 2022-06-26 14:54 Dwaynerbing 阅读(593) 评论(0) 推荐(0)
摘要:一、BooleanToVisibilityConverter类 表示将布尔值与 Visibility 枚举值相互转换的转换器。使用 BooleanToVisibilityConverter 类将布尔值转换为值和从 Visibility 值转换。 该方法 Convert 返回 Visibility.V 阅读全文
posted @ 2022-06-26 13:51 Dwaynerbing 阅读(2678) 评论(0) 推荐(1)
摘要:一、Popup控件的主要属性 **Popup**表示具有内容的弹出窗口,其主要属性为: Child:获取或设置 Popup控件的内容。 IsOpen:获取或设置一个值,该值指示Popup 是否可见 Placement:获取或设置 Popup 控件打开时的控件方向,并指定Popup 控件在与屏幕边界重 阅读全文
posted @ 2022-06-19 22:57 Dwaynerbing 阅读(5956) 评论(3) 推荐(1)
摘要:在WPF中,为了得到当前ItemsControl的索引,我们可以使用ItemsControl.AlternationIndex附加属性,具体使用为我们先设置所在条目控件的AlternationCount属性为一定数目,然后所在条目控件会自动给每一列按照顺序赋值Index,具体代码如下所示: <Win 阅读全文
posted @ 2022-06-19 16:05 Dwaynerbing 阅读(990) 评论(0) 推荐(0)
摘要:在实际应用中,需要在列表中增加分割线,拉动分割线的时候,所有列能够随着分割线的移动而移动,我们在列表的数据模板中增加GridSplitte控件,主要代码如下所示: <DataTemplate DataType="{x:Type local:FileInfo}"> <Grid> <Grid.Colum 阅读全文
posted @ 2022-06-19 15:48 Dwaynerbing 阅读(155) 评论(0) 推荐(0)
摘要:一、WPF中的未捕获异常(UnhandledException) 首先,我们当然是要求应用程序开发人员,尽可能地在程序可能出现异常的地方都去捕捉异常,使用try…catch的方式。但是总是有一些意外的情况可能会发生,这就导致会出现所谓的“未捕获异常(UnhandledException)”。对于这一 阅读全文
posted @ 2021-10-14 10:53 Dwaynerbing 阅读(1487) 评论(1) 推荐(2)
摘要:最近开发一个 WPF 项目, 在此项目中有个类库工程,需要在该类库工程中添加WPF的Window窗体,打开添加后,WPF只有用户控件一个模版,并没有其他WP模版件。 此时,打开所在类库项目的csproj文件,在PropertyGroup节点中添加如下节点: <ProjectTypeGuids>{60 阅读全文
posted @ 2021-07-08 10:09 Dwaynerbing 阅读(336) 评论(0) 推荐(0)
摘要:一、问题描述 RadioButton一般用于单选的时候,也就是从一组值中选择一个值。RadioButton有一个IsChecked属性用于表示是否选中。 比如性别有“男”、“女”、“未知”三种取值,对应三个RadioButton按钮。 二、数据声明 枚举定义如下所示: public enum Sex 阅读全文
posted @ 2021-07-07 23:53 Dwaynerbing 阅读(3942) 评论(0) 推荐(0)
摘要:一、ListBox中为什么选择同一项不能每次都触发SelectionChanged事件呢? ​ 当我需要每次点击ListBox的选中项,都触发事件。找到最符合的事件为SelectionChanged事件。但使用SelectionChanged事件时,并不能每次都触发。 ​ 这是因为Selection 阅读全文
posted @ 2021-05-25 23:43 Dwaynerbing 阅读(642) 评论(0) 推荐(1)
摘要:一、分页控件功能说明 实现如上图所示的分页控件,需要实现一下几个功能: 可以设置每页能够展示的最大列数(例如每页8列、每页16列等等)。 加载的数组总数量超过设置的每页列数后,需分页展示。 可以直接点击指定的列数或者上下页按钮进行页面跳转 二、自定义分页控件使用说明 为了实现以上功能,主要进行以下工 阅读全文
posted @ 2021-05-18 20:53 Dwaynerbing 阅读(3027) 评论(3) 推荐(2)
摘要:一、STAThread关键字 ​ STAThread是一种线程模型,用在程序的入口方法上(在C#和VB.NET里是Main()方法),来指定当前线程的ApartmentState 是STA。所有WPF程序,都必须在单一线程公寓(STA)模型中运行。在Main函数前加上STAThread属性,就是满足 阅读全文
posted @ 2021-05-15 17:07 Dwaynerbing 阅读(714) 评论(0) 推荐(0)