【19】C# 窗體應用WinForm ——【列表框ListBox、復選列表框CheckedListBox】屬性、方法、實例應用

文章目錄

  • 9 復選列表框CheckedListBox
  • 10. 列表框ListBox
    • 10.1 實例:買菜
    • 10.2 實例:購菜 應用二

  • WinForm 是 Windows Form 的簡稱,是基于 .NET Framework 平臺的客戶端(PC軟件)開發技術,是 C# 語言中的一個重要應用。

  • .NET 提供了大量 Windows 風格的控件和事件,可以直接拿來使用。

  • 本專欄內容按照標題序號逐漸深入的,如有不懂的基礎問題,可看前面教程

9 復選列表框CheckedListBox

復選列表框顯示的效果與復選框類似,但在選擇多個選項時操作比一般的復選框更方便。

目標:使用復選列表框完成選購水果的操作。

添加 CheckedListBox ;
在屬性items中添加 復選列表框的內容;
在這里插入圖片描述

在屬性items中添加 復選列表框的內容,按確認
在這里插入圖片描述

CheckedListBox中就添加了復選列表框
在這里插入圖片描述在button中添加函數

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Diagnostics;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;namespace WinFormTest
{public partial class Form1 : Form{public Form1()// 修改窗體初始化函數{InitializeComponent();}private void button1_Click(object sender, EventArgs e){string msg = "";for (int i = 0; i < checkedListBox1.CheckedItems.Count; i++){msg = msg + " " + checkedListBox1.CheckedItems[i].ToString();}if (msg != ""){MessageBox.Show("您購買的商品有:" + msg, "提示");}else{MessageBox.Show("您沒有選購商品!", "提示");}}}
}

運行測試
在這里插入圖片描述

10. 列表框ListBox

列表框控件中有一些屬性與前面介紹的控件不同,如下表所示:

屬性名作用
MultiColumn獲取或設置列表框是否支持多列,如果設置為 True,則表示支持多列; 如果設置為 False,則表示不支持多列,默認為 False
Items獲取或設置列表框控件中的值
SelectedItems獲取列表框中所有選中項的集合
SelectedItem獲取列表框中當前選中的項
SelectedIndex獲取列表框中當前選中項的索引,索引從 0 開始
SelectionMode獲取或設置列表框中選擇的模式,當值為 One 時,代表只能選中一項, 當值為 MultiSimple 時,代表能選擇多項, 當值為 None 時,代表不能選 擇,當值為 MultiExtended 時,代表能選擇多項,但要在按下 Shift 鍵后 再選擇列表框中的項

列表框還提供了一些方法來操作列表框中的選項,由于列表框中的選項是一個集合形式的,列表項的操作都是用 Items 屬性進行的

10.1 實例:買菜

使用列表框列出所需的商品。

注: ListBox實現多選需要設置窗體的 SelectionMode 屬性MultiSimple

添加 ListBox ;
在這里插入圖片描述

在屬性items中添加 復選列表框的內容;

青菜
黃瓜
南瓜
豌豆
辣椒
茄子

在這里插入圖片描述
輸入確認后
在這里插入圖片描述
在button 中添加代碼

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Diagnostics;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;namespace WinFormTest
{public partial class Form1 : Form{public Form1()// 修改窗體初始化函數{InitializeComponent();}private void button1_Click(object sender, EventArgs e){string msg = "";for (int i = 0; i < listBox1.SelectedItems.Count; i++){msg = msg + " " + listBox1.SelectedItems[i].ToString();}if (msg != ""){MessageBox.Show("您購買的商品有:" + msg, "提示");}else{MessageBox.Show("您沒有選購商品!", "提示");}}}
}

在這里插入圖片描述

注: ListBox實現多選需要設置窗體的 SelectionMode 屬性MultiSimple

默認值one

在這里插入圖片描述

在這里插入圖片描述

10.2 實例:購菜 應用二

  • 在上述實例的基礎上添加兩個按鈕,一個負責向列表框中添加菜品,一個負責刪除選中的列表項。

上述實例的基礎上添加 1個 label,1個TextBox,2個Button
在這里插入圖片描述
修改屬性:
Button2屬性中Name:add,Text:添加
Button3屬性中Name:Del,Text:刪除

在這里插入圖片描述
編輯代碼

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Diagnostics;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;namespace WinFormTest
{public partial class Form1 : Form{public Form1()// 修改窗體初始化函數{InitializeComponent();}private void button1_Click(object sender, EventArgs e)//下單{string msg = "";for (int i = 0; i < listBox1.SelectedItems.Count; i++){msg = msg + " " + listBox1.SelectedItems[i].ToString();}if (msg != ""){MessageBox.Show("您選擇的商品是:" + msg, "提示");}else{MessageBox.Show("您沒有選擇商品", "提示");}}private void add_Click(object sender, EventArgs e)//添加{// 當文本框中的值不為空時將其添加到列表框中if (textBox1.Text != ""){listBox1.Items.Add(textBox1.Text);}else{MessageBox.Show("請添加商品!");}}private void Del_Click(object sender, EventArgs e)//刪除{//由于列表框控件中允許多選所以需要循環刪除所有已選項int count = listBox1.SelectedItems.Count; // 獲取listBox內被選中的元素數量List<string> itemValues = new List<string>(); // 定義一個字符串從列表if (count != 0){for (int i = 0; i < count; i++){itemValues.Add(listBox1.SelectedItems[i].ToString());}foreach (string item in itemValues){listBox1.Items.Remove(item);}}else{MessageBox.Show("請選擇需要刪除的商品!");}}}
}

運行測試

刪除商品 辣椒
在這里插入圖片描述

添加商品 雞蛋
在這里插入圖片描述

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/93602.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/93602.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/93602.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

新注冊企業信息查詢“數據大集網”:驅動企業增長的源頭活水

商貿繁榮的齊魯大地上&#xff0c;“趕大集”曾是千年傳承的民間智慧。而今天&#xff0c;一場以新注冊企業信息為核心的“數據大集”正悄然重塑商業生態——數據大集網&#xff0c;以“聚天下好數&#xff0c;促萬企互聯”為使命&#xff0c;將分散的企業信息轉化為精準商機&a…

項目目標如何拆解,才能提高執行效率和效果

項目目標要有效拆解以提高執行效率和效果&#xff0c;需要遵循以下關鍵步驟&#xff1a;明確整體目標、劃分階段性目標和里程碑、具體化任務細分并設定優先級、分配明確的責任人和時間節點、持續跟蹤與反饋調整。其中&#xff0c;劃分階段性目標和里程碑尤為重要&#xff0c;通…

spring-ai-alibaba動態 Prompt 最佳實踐

Spring AI Alibaba 使用 Nacos 的配置中心能力來動態管理 AI 應用的 Prompt。以此來實現動態更新 Prompt 的功能。 環境準備 Nacos: 具備配置中心能力的 Nacos&#xff0c;本例中使用 Nacos 3.0.2。Nacos 2.X 亦可&#xff0c; spring-ai版本1.0.0 &#xff0c;spring-ai-al…

基于詞頻統計、關鍵詞提取、情感分析與AI大模型自動生成系統的設計與實現

文章目錄有需要本項目的代碼或文檔以及全部資源&#xff0c;或者部署調試可以私信博主一、研究背景與項目意義二、項目目標與研究內容三、系統架構與功能模塊1. AI對話生成模塊2. 分詞與關鍵詞提取模塊3. 情感分析模塊4. 行為預測模塊5. 系統管理模塊6. 可視化展示模塊四、技術…

JVM工具

首先&#xff0c;JDK 自帶了很多監控工具&#xff0c;都位于 JDK 的 bin 目錄下&#xff0c;其中最常用的是 jconsole 和 jvisualvm 這兩款視圖監控工具。 一、jps(Java Process Status) 用于查看有權訪問的虛擬機的進程&#xff0c;并顯示他們的進程號 -v&#xff1a;列出虛擬…

VisionPro系列講解 - 03 Simulator 模擬器使用

一、VisionOS Simulator 簡介 VisionOS Simulator 模擬器是專為 VisionOS 操作系統開發的調試和測試工具。它允許開發者在沒有實際硬件設備的情況下&#xff0c;在計算機上模擬 VisionOS 環境&#xff0c;進行應用的開發、調試和優化。該模擬器幫助開發者快速驗證應用的功能和界…

huggingface是什么?2025-07-30

huggingface被我看做是ai模型的試用空間 體驗了一下image edit的功能&#xff0c;去除背景的功能不錯 models 模型庫 dataset 目前對我來說沒用 spaces huggingface的spaces是什么&#xff1f; 演示空間吧。 令人震驚的背景移除能力H200是什么&#xff1f;

mysql索引下推和索引失效

索引下推&#xff1a;ICP過濾的條件可以不限于用于索引查找&#xff08;index lookup&#xff09;的字段。只要存儲引擎在掃描當前索引時能夠訪問到該字段的值&#xff0c;就可以用它來過濾。索引可以分為聚簇索引和非聚簇索引沒有索引下推&#xff1a;當使用聚簇索引的時候&am…

【電賽學習筆記】MaixCAM 的OCR圖片文字識別

前言 本文是對MaixPy官方文檔 MaixCAM MaixPy 實現 OCR 圖片文字識別 - MaixPy 的項目實踐整理與拓展&#xff0c;侵權即刪。 功能介紹 OCR是MaixCAM中功能強大的數字文字識別模塊&#xff0c;可以做到輕松的識別各種數字與文字。 OCR官方例程解析 工程源碼 from maix im…

如何在生成式引擎優化(GEO)中取得成功

如果你希望您的內容出現在 AI Overviews、ChatGPT 和 Gemini 中&#xff1f;以下是設置 GEO 廣告系列的方法。 任何好的 GEO 活動的第一步是創造一些東西實際上想要鏈接到或引用。 GEO 策略組件 想象一些你合理預期不會直接在 ChatGPT 或類似系統中找到的體驗&#xff1a; 例如…

WPFC#超市管理系統(3)商品管理

超市管理系統6. 商品管理6.1 添加商品6.1 商品管理主界面6.3 修改商品6. 商品管理 將前文中的GoodsView全部改成和數據庫一致的ProductView新增枚舉類型商品類型ProductType.cs namespace 超市管理系統.Enums {public enum ProductType{水果類,休閑食品類,糧油類,飲料類,日用…

openwrt中br-lan,eth0,eth0.1,eth0.2

CPU是QCA9558 有兩個以太網接口 這個好像沒有外接交換機直接印出來的 openwrt中br-lan,eth0,eth0.1,eth0.2 https://blog.csdn.net/f2157120/article/details/119460852 這個哥用的是 鏈接: DomyWifi DW33D 路由器 CPU是QCA9558 有兩個以太網接口 因為CPU沒集成千兆交換&…

RAG實戰指南 Day 29:RAG系統成本控制與規模化

【RAG實戰指南 Day 29】RAG系統成本控制與規模化 開篇 歡迎來到"RAG實戰指南"系列的第29天&#xff01;今天我們將深入探討RAG系統的成本控制與規模化部署策略。當RAG系統從原型階段進入生產環境時&#xff0c;如何經濟高效地擴展系統規模、控制運營成本成為關鍵挑…

React 中獲取當前路由信息

在 React 中獲取當前路由信息&#xff0c;根據使用的路由庫不同&#xff08;如 React Router v5/v6 或 Next.js&#xff09;&#xff0c;方法也有所區別。以下是常見場景的解決方案&#xff1a;1. 使用 React Router v6 獲取當前路徑&#xff08;pathname&#xff09;、查詢參數…

Sklearn 機器學習 隨機森林 網格搜索獲取最優參數

??親愛的技術愛好者們,熱烈歡迎來到 Kant2048 的博客!我是 Thomas Kant,很開心能在CSDN上與你們相遇~?? 本博客的精華專欄: 【自動化測試】 【測試經驗】 【人工智能】 【Python】 Sklearn 機器學習:隨機森林 + 網格搜索獲取最優參數實戰指南 在構建機器學習模型時,…

力扣-101.對稱二叉樹

題目鏈接 101.對稱二叉樹 class Solution {public boolean check(TreeNode l, TreeNode r) {if (l null && r null)return true;if ((l null && r ! null) || (r null && l ! null))return false;if (l.val ! r.val)return false;return check(l…

從句--02-1--done,doing ,prep 做定語

提示&#xff1a;文章寫完后&#xff0c;目錄可以自動生成&#xff0c;如何生成可參考右邊的幫助文檔 文章目錄定語1.done&#xff08;過去分詞&#xff09;做定語一、過去分詞作定語的位置二、過去分詞作定語的語義特點三、過去分詞作定語與現在分詞作定語的區別四、過去分詞作…

JVM全面解析

摘要&#xff1a;JVM是Java程序運行的核心環境&#xff0c;負責解釋執行字節碼并管理內存。其核心功能包括類加載與驗證、字節碼執行優化、內存管理與垃圾回收&#xff08;GC&#xff09;、跨平臺支持及安全性保障。JVM架構包含程序計數器、虛擬機棧、本地方法棧、堆和方法區等…

SDC命令詳解:使用write_script命令進行輸出

相關閱讀 SDC輸出命令https://blog.csdn.net/weixin_45791458/category_12993272.html?spm1001.2014.3001.5482 write_script命令用于將設計中的屬性設置命令輸出為腳本文件&#xff08;其實它并不是一個SDC命令&#xff0c;歸為此類只是為了方便管理&#xff09;&#xff0c…

?CASE WHEN THEN ELSE END?

?CASE WHEN THEN ELSE END? 是SQL中實現條件邏輯的核心表達式&#xff0c;支持單字段匹配和多條件判斷&#xff0c;適用于數據處理、分類統計等場景。?基本語法形式?SQL中CASE表達式有兩種標準形式&#xff1a;1? 簡單CASE表達式?&#xff08;字段直接匹配&#xff09;C…