C#对ListBox控件中的数据进行的操作

目录

1.添加数据:

2.删除数据:

3.清空数据:

4.选择项:

5.排序:

6.获取选中的项:

7.获取ListBox中的所有项:

8.综合示例


        C#中对ListBox控件中的数据进行的操作主要包括添加、删除、清空、选择、排序等。

1.添加数据:

// 添加一个字符串数组
listBox1.Items.AddRange(new string[] { "item1", "item2", "item3" });

// 或者添加单个字符串
listBox1.Items.Add("item4");

2.删除数据:

// 删除选定的项
listBox1.Items.Remove(listBox1.SelectedItem);

// 或者删除第n项
listBox1.Items.RemoveAt(n);

3.清空数据:

listBox1.Items.Clear();

4.选择项:

// 选择第n项
listBox1.SelectedIndex = n;

// 或者选择包含特定文本的项
for (int i = 0; i < listBox1.Items.Count; i++)
{
    if (listBox1.Items[i].ToString() == "item4")
    {
        listBox1.SelectedIndex = i;
        break;
    }
}

5.排序:

//listBox1排序);
listBox1.Sorted = true;

6.获取选中的项:

int selectedIndex = listBox1.SelectedIndex;

7.获取ListBox中的所有项:

List<string> allItems = new List<string>();
foreach (string item in listBox1.Items)
{
    allItems.Add(item.ToString());
}

8.综合示例

// ListBox控件操作
using System.Diagnostics;
using System.Linq;
namespace _148_2
{
    public partial class Form1 : Form
    {
        private static ListBox? listBox1;
        private Button? button1;
        private static TextBox? textBox1;
        private Button? button2;
        private Button? button3;
        private Button? button4;

        public Form1()
        {
            InitializeComponent();
            StartPosition = FormStartPosition.CenterScreen;
            Load += Form1_Load;
        }

        private void Form1_Load(object? sender, EventArgs e)
        {
            // 
            // listBox1
            // 
            listBox1 = new ListBox
            {
                FormattingEnabled = true,
                ItemHeight = 17,
                Location = new Point(12, 12),
                Name = "listBox1",
                Size = new Size(270, 174),
                TabIndex = 1
            };
            // 
            // button1
            // 
            button1 = new Button
            {
                ForeColor = SystemColors.ActiveCaptionText,
                TabIndex = 2,
                Text = "操作",
                UseVisualStyleBackColor = true,
                Location = new Point(231, 221),
                Name = "button1",
                Size = new Size(50, 23)
            };
            button1.Click += Button1_Click;
            // 
            // textBox1
            // 
            textBox1 = new TextBox
            {
                Location = new Point(12, 192),
                Name = "textBox1",
                Size = new Size(270, 23),
                TabIndex = 3
            };
            // 
            // button2
            // 
            button2 = new Button
            {
                ForeColor = SystemColors.ActiveCaptionText,
                TabIndex = 4,
                Text = "清空",
                UseVisualStyleBackColor = true,
                Location = new Point(166, 221),
                Name = "button2",
                Size = new Size(49, 23)
            };
            button2.Click += Button2_Click;
            // 
            // button3
            // 
            button3 = new Button
            {
                ForeColor = SystemColors.ActiveCaptionText,
                Location = new Point(12, 221),
                Name = "button3",
                Size = new Size(75, 23),
                TabIndex = 5,
                Text = "复制全部",
                UseVisualStyleBackColor = true
            };
            button3.Click += Button3_Click;
            // 
            // button4
            // 
            button4 = new Button
            {
                ForeColor = SystemColors.ActiveCaptionText,
                Location = new Point(103, 221),
                Name = "button4",
                Size = new Size(47, 23),
                TabIndex = 6,
                Text = "删除",
                UseVisualStyleBackColor = true
            };
            button4.Click += Button4_Click;
            // 
            // Form1
            // 
            AutoScaleDimensions = new SizeF(7F, 17F);
            AutoScaleMode = AutoScaleMode.Font;
            ClientSize = new Size(294, 255);
            Controls.Add(button4);
            Controls.Add(button3);
            Controls.Add(button2);
            Controls.Add(textBox1);
            Controls.Add(button1);
            Controls.Add(listBox1);
            ForeColor = SystemColors.ControlLightLight;
            Name = "Form1";
            Text = "ListBox操作";
        }

        private void Button1_Click(object? sender, EventArgs e)
        {
            ListBoxOperations();
        }

        private static void ListBoxOperations()
        {
            // 创建一个字符串数组
            string[] items = ["item3", "item2", "item1"];

            // 添加字符串数组到ListBox
            listBox1!.Items.AddRange(items);

            // 添加单个字符串到ListBox
            listBox1.Items.Add("item4");

            //listBox1排序
            listBox1.Sorted = true;

            // 选择第2个项(索引从0开始)
            listBox1.SelectedIndex = 1;

            // 获取选中的项
            string selectedValue = listBox1.SelectedItem!.ToString()!;
            textBox1!.Text = "Selected Value: " + selectedValue;

            // 获取选中的项的索引
            int selectedIndex = listBox1.SelectedIndex;
            textBox1!.Text += "  Selected Index: " + selectedIndex;
        }
        // 清空所有
        private void Button2_Click(object? sender, EventArgs e)
        {
            listBox1!.Items.Clear();
        }
        // 复制并添加全部
        private void Button3_Click(object? sender, EventArgs e)
        {
            List<string> allItems = [];
            foreach (string item in listBox1!.Items)
            {
                allItems.Add(item.ToString());
            }
            foreach (string item in allItems)
            {
                listBox1.Items.Add(item);
            }
        }
        // 删除选中
        private void Button4_Click(object? sender, EventArgs e)
        {
            listBox1!.Items.Remove(listBox1.SelectedItem!);
        }
    }
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/462639.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

RISC-V Optimization Guide(笔记)

官网发表的文章地址&#xff1a;RISC-V Optimization Guide B站有人做过解读视频&#xff0c;这篇文章也是看视频时做的笔记&#xff1a;视频地址 一、标量整数优化 1.1 常量的具体化 使用lui/addiw将立即数加载至寄存器&#xff0c;当立即数低12位的最高位为1时&#xff0c…

uniapp 利用uni-list 和 uni-load-more 组件上拉加载列表

列表的加载动作&#xff0c;在移动端开发中随处可见&#xff0c;笔者也是经常用到。今天正好有空&#xff0c;做一个总结&#xff0c;方便以后使用。uniapp 利用uni-list 和 uni-load-more 组件上拉加载列表操作步骤如下&#xff1a;1、资料准备 1&#xff09;、uni-load-more…

【安全类书籍-3】XSS跨站脚剖析与防御

目录 内容简介 作用 下载地址 内容简介 这本书涵盖以下几点: XSS攻击原理:解释XSS是如何利用Web应用未能有效过滤用户输入的缺陷,将恶意脚本注入到网页中,当其他用户访问时被执行,实现攻击者的目的,例如窃取用户会话凭证、实施钓鱼攻击等。 XSS分类:分为存储型XSS(…

MongoDB——linux中yum命令安装及配置

一、创建mongodb-org-3.4.repo文件 vi /etc/yum.repos.d/mongodb-org-3.4.repo 将下面内容添加到创建的文件中 [mongodb-org-3.4] nameMongoDB Repository baseurlhttps://repo.mongodb.org/yum/amazon/2013.03/mongodb-org/3.4/x86_64/ gpgcheck1 enabled1 gpgkeyhttps://www…

力扣每日一题 矩阵中移动的最大次数 DP

Problem: 2684. 矩阵中移动的最大次数 复杂度 ⏰ 时间复杂度: O ( n m ) O(nm) O(nm) &#x1f30e; 空间复杂度: O ( n m ) O(nm) O(nm) Code class Solution { public int maxMoves(int[][] grid){int n grid.length;int m grid[0].length;int[][] f new int[n][m]…

sqllab第二十五A关通关笔记

知识点&#xff1a; 数值型注入双写绕过 oorranand这里不能用错误注入&#xff08;固定错误回显信息&#xff09;联合注入 测试发现跟25关好像一样&#xff0c;就是过滤了and or # 等东西 构造payload:id1/0 发现成功运算了&#xff0c;这是一个数值型的注入 构造payload:id…

MySQL基础架构

文章目录 MySQL基础架构一、连接器 - 建立连接&#xff0c;权限认证二、查缓存 - 提高效率三、分析器 - 做什么四、优化器 - 怎么做五、执行器 - 执行语句六、存储引擎1、存储引擎的概述2、存储引擎的对比3、存储引擎的命令4、存储引擎的选择 MySQL基础架构 大体来说&#xff…

【数据结构】二叉树OJ题(C语言实现)

✅✅✅✅✅✅✅✅✅✅✅✅✅✅✅✅ ✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨ &#x1f33f;&#x1f33f;&#x1f33f;&#x1f33f;&#x1f33f;&#x1f33f;&#x1f33f;&#x1f33f;&#x1f33f;&#x1f33f;&#x1f33f;&#x1f33f;&#x1f33f;&#x1f33f;&#x1…

Ubuntu 14.04:安装 PaddleOCR 2.3

目录 一、说明 1.1 如何选择版本 1.2 查看 github 中的 PaddleOCR 版本 二、安装 2.1 安装前环境准备 2.2 下载包 2.3 解压 2.4 安装依赖库 异常处理&#xff1a;Read timed out. 2.5 下载推理模型&#xff1a;inference 2.5.1 模型存放位置 2.5.2 模型下载链接 2.5.…

云原生部署手册02:将本地应用部署至k8s集群

&#xff08;一&#xff09;部署集群镜像仓库 1. 集群配置 首先看一下集群配置&#xff1a; (base) ➜ ~ multipass ls Name State IPv4 Image master Running 192.168.64.5 Ubuntu 22.04 LTS1…

MySQL--深入理解MVCC机制原理

什么是MVCC&#xff1f; MVCC全称 Multi-Version Concurrency Control&#xff0c;即多版本并发控制&#xff0c;维持一个数据的多个版本&#xff0c;主要是为了提升数据库的并发访问性能&#xff0c;用更高性能的方式去处理数据库读写冲突问题&#xff0c;实现无锁并发。 什…

k8s之图形界面DashBoard【九】

文章目录 9. DashBoard9.1 部署Dashboard9.2 使用DashBoard 镇场 9. DashBoard 之前在kubernetes中完成的所有操作都是通过命令行工具kubectl完成的。其实&#xff0c;为了提供更丰富的用户体验&#xff0c;kubernetes还开发了一个基于web的用户界面&#xff08;Dashboard&…

VMware ESXi 8.0U1d macOS Unlocker OEM BIOS 集成网卡驱动和 NVMe 驱动 (集成驱动版)

VMware ESXi 8.0U1d macOS Unlocker & OEM BIOS 集成网卡驱动和 NVMe 驱动 (集成驱动版) 发布 ESXi 8.0U1 集成驱动版&#xff0c;在个人电脑上运行企业级工作负载 请访问原文链接&#xff1a;https://sysin.org/blog/vmware-esxi-8-u1-sysin/&#xff0c;查看最新版。原…

Spark-Scala语言实战(2)(在IDEA中安装Scala,超详细配图)

之前的文章中&#xff0c;我们学习了如何在windows下下载及使用Scala&#xff0c;但那对一个真正想深入学习Scala的人来说&#xff0c;是不够的&#xff0c;今天我会给大家带来如何在IDEA中安装Scala。同时&#xff0c;希望我的文章能帮助到你&#xff0c;如果觉得我的文章写的…

STM32(TIM定时器中断)

理论知识 定时器定时中断 接线图 定时器工作配置步骤 定时中断和内外时钟源选择 定时器中需要使用的函数 程序实现效果&#xff1a; void TIM_DeInit(TIM_TypeDef* TIMx); **// 恢复定时器的缺省配置**void TIM_TimeBaseInit(TIM_TypeDef* TIMx, TIM_TimeBaseInitTypeDef*TIM…

SwiftUI动画之几何匹配

SwiftUI动画之几何匹配 记录一下 日常开发中经常使用到的滑块功能 如何同工几何匹配快速制作点击动画 import SwiftUIstruct MatchedGeometryEffestExamle: View {let categories ["Home", "Popular", "Saved"]State var selecedTitle "…

Artemis Finance引领Metis流动性质押,并启动积分空投活动

在以太坊可扩展性解决方案中&#xff0c; Optimism、Arbitrum等Layer2链主要面临两个问题&#xff1a;欺诈/有效性证明以及去中心化排序器Sequencers。在实际的发展过程中&#xff0c;Optimism或Arbitrum等Layer2链仍然侧重于在欺诈证明和有效性证明方面进行努力&#xff0c;在…

MATLAB 矩阵

【MATLAB】&#xff08;四&#xff09;MATLAB在线性代数中的应用_线性代数在matlab中的应用-CSDN博客 矩阵的秩 rank rank&#xff08;a&#xff09; 矩阵的逆矩阵 inv inv&#xff08;a&#xff09; 矩阵的特征值eig和特征向量D [V,D]eig(a) 特征值 deig(a) 特征向量D [V…

【 c 语言 】指针入门

&#x1f388;个人主页&#xff1a;豌豆射手^ &#x1f389;欢迎 &#x1f44d;点赞✍评论⭐收藏 &#x1f917;收录专栏&#xff1a;C语言 &#x1f91d;希望本文对您有所裨益&#xff0c;如有不足之处&#xff0c;欢迎在评论区提出指正&#xff0c;让我们共同学习、交流进步&…

鸿蒙Harmony应用开发—ArkTS声明式开发(容器组件:Swiper)

滑块视图容器&#xff0c;提供子组件滑动轮播显示的能力。 说明&#xff1a; 该组件从API Version 7开始支持。后续版本如有新增内容&#xff0c;则采用上角标单独标记该内容的起始版本。 子组件 可以包含子组件。 说明&#xff1a; 子组件类型&#xff1a;系统组件和自定义组…