首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

C# 值得永久收藏WPF项目实战(经典)

01 简介 之前也写过好多篇CM框架相关项目实战文章,比如: C# WPF框架Caliburn.Micro快速搭建 C# WPF框架Caliburn.Micro入门实例1 C# WPF MVVM项目实战...(进阶①) C# WPF MVVM项目实战(进阶②) C# WPF MVVM模式下在主窗体显示子窗体并获取结果 C# WPF Caliburn.Micro框架下利用Mef加载其它项目界面 C# WPF...mvvm模式下combobox绑定(list、Dictionary) C# WPF MVVM模式Caliburn.Micro框架下事件发布与订阅 但是可能这些都是把一个综合性项目分多个部分分别讲述...做等待窗体; CM框架下Conductor用法; CM框架下IWindowManager; 双检锁单例模式用法; ListBox数据绑定以及窗体切换; 如果以上知识点你都不敢兴趣或者已经熟知,那这篇文章不适合你...logging一个通用日志,需要在nuget上引用:Common.Logging.Log4Net1213; ListBoxItems_SelectionChanged()是listbox选择改变事件

4.5K10

【愚公系列】2023年09月 WPF控件专题 ListBox控件详解

这些控件都是WPF中常见标准用户界面元素。 自定义控件则允许开发人员使用XAML和C#等编程语言来创建个性化用户界面元素。自定义控件可以根据需求提供更多功能和自定义化选项,以及更好用户体验。...一、ListBox控件详解 ListBoxWPF中常用控件之一,用于展示列表形式数据。...> 其中,MyList是ViewModel中一个字符串列表,通过绑定方式将其作为ListBox数据源。...1.属性介绍 常用ListBox控件属性: ItemsSource:绑定数据源集合。 SelectedItem:获取或设置ListBox中所选项。...数据绑定ListBox可以方便地绑定数据,例如绑定数据库中数据、XML文件中数据等等。 ListBoxWPF中非常重要控件之一,可用于许多不同应用程序场景。

56200
您找到你想要的搜索结果了吗?
是的
没有找到

WPF 列表控件数据源绑定多个数据集合方法

WPF列表控件如 ListBox 或 ListView 等,本文告诉大家在这些列表控件上进行绑定多个数据集合来源多个实现方法。...在开始之前,咱先搭建一点测试使用代码,假定咱有一个 列表控件 准备绑定数据源是两个 ObservableCollection 对象,下面来定义这两个 ObservableCollection 对象和对应...咱需要将两个 ObservableCollection 对象作为数据源,放在相同一个 ListBox 里面 下面是多个不同实现方式,解决如何在 WPF 中在 ListBox 或 ListView 绑定多个数据集合...绑定集合里面,然后在 ItemsSource 使用 CompositeCollection 进行绑定,代码如下 ...通过 StaticResource 绑定静态资源。

3.4K21

dotnet 从入门放弃 500 篇文章合集

本文是记录我从入门放弃写博客 博客包括 C#WPF、UWP、dotnet core 、git 和 VisualStudio 和一些算法,所有博客使用 docx 保存 下载:dotnet 从入门放弃...C# 很少人知道科技 C# 快速释放内存数组 C# 搜索算法 C# 获得设备usb信息 C# 转换类型和字符串 C# 遍历枚举 C# 金额转中文大写 C#将dll打包程序中 c-70 c-设计模式...数组 dotnet core 编程规范 dotnet core 黑科技·String.IndexOf 性能 dotnet 从入门放弃 500 篇博客合集 dotnet 设计规范 · 抽象定义 dotnet...wpf GifBitmapDecoder 解析 gif 格式 WPF ListBox 选择 WPF listView 绑定前一项 WPF popup置顶 wpf PreviewTextInput 在鼠标输入获得输入...+Tab 隐藏窗口 WPF 好看矢量图标 wpf 如何使用 Magick.NET 播放 gif 图片 WPF 如何在 WriteableBitmap 写文字 WPF 如何在应用程序调试启动 WPF 如何在绑定失败异常

10.4K20

《深入浅出WPF》学习笔记之深入浅出话Binding

数据绑定Source和ElementName区别 Source 用于指定数据源为后台数据对象、集合 ElementName 用于指定“数据源”为界面上某个控件某个属性   注意:   在C#代码中可以访问...XAML代码中声明变量,但XAML代码中无法访问C#代码中声明变量。   ...PropertyChanged,一旦绑定属性值改变,源会立即更新。 View Code 6.3.3 Binding路径(Path)   即绑定到底需要关注哪个属性值。...(Dependency Object)   *容器DataContext (WPF默认使用源)   *ElementName指定源:在C#代码中把对象Name作为源赋给Binding   *RelativeSource...WPF也可以让列表控件和DataTable直接建立Binding <ListBox

5.2K10

XAML常用控件2

wpf和WinForm中XY轴定义是一样,都是从程序左上角作为原点,原点到右上角这一条线是X轴,原点到左下角这一条线是Y轴。..., 列表项控件 Menu:这个控件专用于菜单项显示,使用其属性ItemsSource绑定后台一个集合或数组,或者使用MenuItem以硬编码形式来填充一个个菜单项,MenuItemHeader...MenuItem Header="菜单项3" /> 对应后台C#...:这个控件是个使用频率很高控件,用于显示后台一个数组或者集合数据,同样也是使用其属性ItemsSource与后台进行数据绑定,或者使用ListboxItem以硬编码形式填充数据,请看代码: DataGrid控件 这个控件就是一个表格,跟数据库中表是类似的,并且它职责就是用来显示数据库中数据,下面先看个实例代码: <DataGrid

2.3K30

WPF 已知问题 在 ObservableCollection CollectionChanged 修改集合内容将让 UI 显示错误

,修改之后 UI 层将不能符合预期。...本文将告诉大家此问题复现方法和修复方法 在 UI 绑定 ObservableCollection 修改时,给此集合列表添加新项目,此时 UI 绑定数据是对但是界面显示错误。...简单复现方法如下 先在后台代码定义好绑定模型 Model 类,代码如下 public class Model { public string?...一个绕过方法是在进入 List_CollectionChanged 减等事件,但是绕过是存在坑,原本预期列表顺序应该是 0 2 xx 顺序,然而实际界面显示如下 以上就是最简单方法让大家了解问题...通过以上异常信息也可以了解为什么 WPF 存在此已知问题,因为原本预期就是开发者不能在集合变更时修改集合,如果在每个集合变更里都需要重新处理状态,将会让 WPF 性能很差。

2.1K30

【愚公系列】2023年11月 WPF控件专题 WindowFormsHost控件详解

自定义控件则允许开发人员使用XAML和C#等编程语言来创建个性化用户界面元素。自定义控件可以根据需求提供更多功能和自定义化选项,以及更好用户体验。...一、WindowFormsHost控件详解WindowFormsHost控件是WPF中与WinForms集成控件。它允许您将现有的WinForms控件嵌入WPF应用程序中,以利用它们功能。...例如,以下代码将一个Windows FormsListBox嵌入WPFWindowFormsHost控件中:<Window x:Class="WpfApplication1.MainWindow"...("Item 2"); listBox.Items.Add("Item 3"); }}需要注意是,嵌入WinForms控件不能直接访问WPF资源,因为它们存在于不同UI线程中...窗口 winFormsHost.Child = chart;}这个例子中创建一个Pie Chart图表,并将它嵌入WPF窗口中。

51341

将不规则Python多维数组拉平一维,你学废了吗?

另外如果是下面这种不规则多维列表: l = [[1, 2], [3, 4], [5, [6, 7, [8, 9]]], 10, [11, [12, 13, [14, 15, [16]]]]] 我们想将它拉平一维列表...拉平数组 使用numpy数组拉平数组,其实很受限,一旦列表内部每个元素长度不一致,numpy就不好使了: l = [[1, 2, 3], [4, 5], [6, 7], [8, 9, 10, 11]]...将不规则多维数组拉平1维 上面的需求似乎很简单,假如我们希望将下面这个复杂列表,拉平一维呢?...深度优先遍历策略拉平多维数组 下面我介绍一个正常解决这个问题办法,那就是使用深度优先遍历策略,如果你对拉平结果没有顺序要求还可以使用广度优先遍历策略。...为了保证结果是原有的顺序,我们把左端作为栈顶,而数组不适合删除左端数据,所以使用deque来作为栈。

1.9K10

【愚公系列】2023年11月 WPF控件专题 2023秋招WPF高频面试题

Dispatcher: 一个抽象基类,用于绑定一个线程上类。与Windows窗体类似,WPF也要求仅从创建线程中调用方法和属性。...这是一种使 xaml 中任何内容都能够被给定名称引用技术。 22.ListBox 与 ListView - 如何选择以及何时进行数据绑定?...23.说出使用WPF而不是Windows窗体一些优点使用 WPF 代替 Windows 窗体优点: XAML 使更容易创建和编辑 GUI,并允许在设计模式 (XAML) 和后台代码(C#、VB.NET...然而,出于绑定目的,也可能有另一种情况,并不想得到整个 Category 对象绑定列表绑定结果,而是该 Category 对象上单个属性值(例如它 ID 属性)。...使用SelectedValuePath='ID' 将 Category 对象上 ID 属性分配给列表绑定 Product 对象上属性,然后将 SelectedValue 属性绑定 DataContext

40822

WPF Binding学习(四) 绑定各种数据源

DisplayBinding(类型是BindingBase),使用这个属性可以指定这一列使用什么样Binding去关联数据-----这与ListBox有些不同,ListBox使用是DisplayMemberPath...Path,而是XPath XmlDocument doc = new XmlDocument(); doc.Load(@"C:\资料\f盘\代码\c#\WPF\TreeView...Caculate方法实现第三个文本框是前两个之和,也就是我们需要将前两个文本框绑定Add方法两个参数,第三个绑定返回值上。  ...Self:引用正在绑定元素,允许你该元素一个属性绑定同一元素其他属性上。   FindAncestor:引用数据绑定元素父链中上级。 ...可用于绑定特定类型上级或其子类     在这里设置为了FindAncestor. 然后为RelativeSource设置查找级别和查找类型。

4.2K30

《深入浅出WPF》——模板学习

界面元素间沟通依靠路由事件来完成,有时候路由事件和附加事件也会加入数据传输中。让我们思考一个问题:WPF作为Windows程序表示方式,它究竟在表示什么?...这种方法对WPF最大曲解在于没有借助Binding实现数据驱动界面,并且认为ListBox.Items属性里放置是控件——这种曲解迫使数据在界面元素间交换并且程序员只能使用事件驱动方式来实现逻辑——...(流动在控件之间是事件) ~~~~ 数据驱动,则是用户通过控件去改变控件绑定数据,因为数据变了,与该数据绑定控件都会发生变化。...(一般外部控件绑定是Binding,可见内部控件绑定与外部控件还是做了一定区分)将自己属性值关联在目标控件某个属性上,必要时候还可以添加Converter。...WPF之前,我们只能重写控件比较底层方法和属性(这也是以前想要使用一些高级特性,动不动就要改底层代码,使得这种技能门槛很高),而现在我们只需要调整ListBoxItemsPanel属性,请看下面代码

4.7K10

ObservableCollection 类

Windows Presentation Foundation (WPF) 在 Microsoft .NET Framework 中添加了一些功能,您可以可靠地使绑定控件与其数据源保持一致。...利用 ObservableCollection 类,WPF /Silverlight 应用程序可以使绑定控件与基础数据源保持同步,但它还提供了更有用信息,尤其是 ObservableCollection...通常我们采用WCF服务所使用List, 在Silverlight客户端生成代理都会使用ObservableCollection 替代,没有用过Silverlight同学可以这篇文章《推荐一个...当我们在列表(比如ListBox)显示了一个CLR对象列表(比如List)时,如果想在修改List对象后,ListBox也动态反映这种变 化。...两者区别在于直接更新 ItemSource会使WPF抛弃ListBox已有的所有数据,然后全部重新从List加载。

1.1K60

【翻译】WPF数据绑定表达式

有很多文章讨论绑定概念,并讲解如何使用StaticResources和DynamicResources绑定属性。这些概念使用WPF提供数据绑定表达式。...在本文中,让我们研究WPF提供不同类型数据绑定表达式。 介绍 数据绑定是一种强大技术,它允许数据在UI元素和业务模型之间流动。当业务模型中数据发生变化时,它会自动将更改反映UI元素上。...输出 2、RelativeSource 绑定 RelativeSource是一个属性,它用相对关系设置绑定源以绑定目标。此扩展主要用于必须将元素一个属性绑定同一元素另一个属性时。...属性绑定子元素buttonContent属性。...TextBlockText属性以将其绑定集合的当前选定项,如下所示。

2K10

WPF 教程(wpf架构)

数据可以是任何你想要东西,从实际信息WPF控件层次结构都行。这非常有用,你可以把数据放在一个地方,然后在其他地方调用它。 这个概念被广泛用在样式和模版,我们后面会详细讲到。...打个比方,一个是绑定一个静态值,一个是绑定一个函数,这个函数监视值,每当值发生变化时候发送给你。尽管严格意义上来讲不是这样,但你可以这么理解,也就明白了什么时候用,用哪一种。...下面的例子,我将存储一个字符串数组,以及一个用于背景渐变画笔。这应该让你明白你能用资源做很多事情。...,窗体包含了一个简单字符串,一个字符串数组和一个渐变画刷。...字符串用于标签,数组用于下拉组合框,画刷用于整个窗口背景。就像这样很多东西都可被存为资源。

1.7K10

WPF入门放弃(完结篇)| sqlite以及数据复用(附总源码分享)

WPF也是我今年刚开始深入去了解,看了不少学习视频和书籍,受剑神Python入门放弃启发,想把这段时间学习内容做个总结,一是因为我相信技术总是需要不断总结与练习才能有所进步,二是希望帮助初学者对...WPF入门放弃(一) | 安装与创建 WPF入门放弃(二) | 初识XAML WPF入门放弃(三)| 制作串口调试助手 WPF入门放弃(四)| 给串口调试助手列表赋值(附调试软件) WPF入门放弃...(五)| 串口读取与写入(程序&附串口调试精灵) WPF入门放弃(六)| 画面优化与发布(附源程序) WPF入门放弃(七)| 常用布局控件用法 WPF入门放弃(八)| 常用控件(二) WPF...,同时多次使用更加方便 多次点击读取SQlite数据重复, 我们用listbox.Items.Clear(); 在读取数据之前先将之前数据清掉。...通过这十期内容,希望能帮助新手对WPF入门有个基本认识,当然WPF还有很多东西还没涉及,比如数据绑定、绘图、动画等。目前我也还没掌握,就不继续分享了,江湖路远,有缘再见。

2.6K61
领券