当前位置: 首页 > news >正文

44.ComboBox的数据绑定 C#例子 WPF例子

固定最简步骤,包括

XAML:

题头里引入命名空间

标题下面引入类

combobox绑定资源属性和选择属性,block则绑定和combobox一样的选择属性

C#:

通知的类,及对应固定的任务

引入字段

引入属性

其中资源是只读的

选择属性是单触发,必须要加nameof

属性

block=>指向box的属性

这是最简形式

<Window x:Class="绑定类型2_combobox.MainWindow"xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"xmlns:d="http://schemas.microsoft.com/expression/blend/2008"xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"xmlns:local="clr-namespace:MainWindow_ViewModel"mc:Ignorable="d"Title="MainWindow" Height="450" Width="800"><Window.DataContext><local:MainWindowViewModel/></Window.DataContext><Grid><ComboBox HorizontalAlignment="Left" Margin="378,142,0,0" VerticalAlignment="Top" Width="120" ItemsSource="{Binding Item_source}" SelectedItem="{Binding SelectedItem, Mode=TwoWay}"/><TextBlock HorizontalAlignment="Left" Margin="378,187,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Text="{Binding SelectedItem}"/></Grid>
</Window>
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Runtime.CompilerServices;
using System.Text;
using System.Threading.Tasks;
using System.Web;namespace MainWindow_ViewModel
{class MainWindowViewModel:INotifyPropertyChanged{private string[] item_source = { "6dB/oct", "12dB/oct", "18dB/oct", "24dB/oct", "30dB/oct", "36dB/oct", "42dB/oct", "48dB/oct" };private string selectedItem;public string[] Item_source{get { return item_source; }}public string SelectedItem{get { return selectedItem; }set{selectedItem = value;OnPropertyChanged(nameof(SelectedItem));}}//固定public event PropertyChangedEventHandler PropertyChanged;protected void OnPropertyChanged([CallerMemberName] string propertyName = null){PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));}}
}

也可以block绑定单独一个属性,像之前那样

        public string SelectedItem{get { return selectedItem; }set{selectedItem = value;OnPropertyChanged(nameof(SelectedItem));OnPropertyChanged(nameof(SelectedItemDisplay));}}public string SelectedItemDisplay => SelectedItem;
        <ComboBox HorizontalAlignment="Left" Margin="378,142,0,0" VerticalAlignment="Top" Width="120" ItemsSource="{Binding Item_source}" SelectedItem="{Binding SelectedItem, Mode=TwoWay}"/><TextBlock HorizontalAlignment="Left" Margin="378,187,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Text="{Binding SelectedItemDisplay}"/>

http://www.lryc.cn/news/520878.html

相关文章:

  • 物联网之传感器技术
  • QTreeWidget QTreeWidgetItem
  • torch.einsum计算张量的外积
  • PostgreSQL 超级管理员详解
  • RabbitMQ 工作模式使用案例之(发布订阅模式、路由模式、通配符模式)
  • 【2024年华为OD机试】(C卷,100分)- 机场航班调度程序 (Java JS PythonC/C++)
  • Vue.js组件开发-使用地图绘制轨迹
  • vue 与 vue-json-viewer 实现 JSON 数据可视化
  • ubuntu Android : adb logcat 过滤多个log
  • kubeneters-循序渐进Cilium网络(三)
  • 编译与汇编
  • 对MySQL滴MVCC理解(超详细)
  • Mac玩Steam游戏秘籍!
  • matlab实现了一个优化的遗传算法,用于求解注汽站最优位置的问题
  • 电商项目-基于ElasticSearch实现商品搜索功能(三)
  • 【Vim Masterclass 笔记12】S06L26 + L27:Vim 文本的搜索、查找及替换同步练习(含点评课)
  • Jsoup实现实时爬取
  • 如何在Ubuntu上安装Cmake
  • 图解Git——分支开发工作流《Pro Git》
  • 没有正确使用HTTP Range Request,导致访问Azure Blob存储的视频没有实现流式播放
  • 回归预测 | MATLAB实RVM相关向量机多输入单输出回归预测
  • 开发人员学习书籍推荐(C#、Python方向)
  • Springboot + vue 小区物业管理系统
  • 基于深度学习的视觉检测小项目(十二) 使用线条边框和渐变颜色美化界面
  • 基于OQuPy的量子编程实例探究:理论、实践与展望
  • 【数据库】二、关系数据库
  • C#类型转换
  • 【Vue】Vue组件--上
  • 21、Transformer Masked loss原理精讲及其PyTorch逐行实现
  • 构建高性能网络服务:从 Socket 原理到 Netty 应用实践