Winform ListView根据条件定位到指定行

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace Winfrom
{
    public partial class Form3 : Form
    {
        List<string> list = null;

        public Form3()
        {
            InitializeComponent();

            list = new List<string>();
        }

        private void Form3_Load(object sender, EventArgs e)
        {
            listViewData.Items.Clear();
            listViewData.Columns.Clear();
            listViewData.Columns.Add("选择", 40, HorizontalAlignment.Center);
            listViewData.Columns.Add("序号", 40, HorizontalAlignment.Right);
            listViewData.Columns.Add("运单号", 120, HorizontalAlignment.Center);

            for (int i = 1; i <= 30; i++)
            {
                list.Add(i.ToString());
            }

            foreach (var t in list)
            {
                var row = listViewData.Items.Count + 1;
                var myItem = new ListViewItem();
                myItem.SubItems.Add(row.ToString());
                myItem.SubItems.Add(t);

                if (row % 2 == 0)
                {
                    myItem.BackColor = Color.FromArgb(252, 254, 215);
                }
                myItem.Checked = false;
                listViewData.Items.Add(myItem);
            }
        }

        private void txtWaybillNumber_KeyDown(object sender, KeyEventArgs e)
        {
            if (string.IsNullOrEmpty(txtWaybillNumber.Text.Trim())) return;
            //30
            int index = 0, i = 0;
            foreach (var t in list)
            {
                if (t == txtWaybillNumber.Text.Trim())
                {
                    index = i;
                    break;
                }
                i++;
            }

            listViewData.Items[index].Selected = true;
            listViewData.SelectedItems[0].BackColor = Color.FromArgb(49, 106, 197);
            listViewData.Items[index].EnsureVisible();
        }
    }
}

时间: 2024-07-31 03:35:49

Winform ListView根据条件定位到指定行的相关文章

android之listView定位到指定行同时隐藏输入键盘

帮别人该bug遇到的一个问题,记录下来. listView.setSelection(a); 这个方法可以让让你的listview定位到指定行 但是如果紧接着执行隐藏输入键盘的代码,则会有bug,这个时候定位无法实现. imm.hideSoftInputFromWindow(PatientAddActivity.this .getCurrentFocus().getWindowToken(), InputMethodManager.HIDE_NOT_ALWAYS); 使用切换这个方法隐藏输入法键

Winform listview控件、 容器控件

1.常用的基本属性: (1)FullRowSelect:设置是否行选择模式.(默认为false) 提示:只有在Details视图该属性才有意义. (2) GridLines:设置行和列之间是否显示网格线.(默认为false)提示:只有在Details视图该属性才有意义. (3)AllowColumnReorder:设置是否可拖动列标头来对改变列的顺序.(默认为false)提示:只有在Details视图该属性才有意义. (4)View:获取或设置项在控件中的显示方式,包括Details.Large

C# WINFORM ListView用法详解(转)

一.ListView类 1.常用的基本属性: (1)FullRowSelect:设置是否行选择模式.(默认为false) 提示:只有在Details视图该属性才有意义. (2) GridLines:设置行和列之间是否显示网格线.(默认为false)提示:只有在Details视图该属性才有意义. (3)AllowColumnReorder:设置是否可拖动列标头来对改变列的顺序.(默认为false)提示:只有在Details视图该属性才有意义. (4)View:获取或设置项在控件中的显示方式,包括D

winform listview控件、容器控件

一.ListView类 1.常用的基本属性: (1)FullRowSelect:设置是否行选择模式.(默认为false) 提示:只有在Details视图该属性才有意义. (2)GridLines:设置行和列之间是否显示网格线.(默认为false)提示:只有在Details视图该属性才有意义. (3)AllowColumnReorder:设置是否可拖动列标头来对改变列的顺序.(默认为false)提示:只有在Details视图该属性才有意义. (4)View:获取或设置项在控件中的显示方式,包括De

sed 指定行范围匹配(转)

sed -n '5,10{/pattern/p}' file sed是一个非交互性性文本编辑器,它编辑文件或标准输入 导出的文件拷贝.标准输入可能是来自键盘.文件重定向.字符串或变量,或者是一个管道文件.sed可以随意编辑小或大的文件,有许多sed命令用来编辑. 删除,并允许做这项工作时不在现场.sed一次性处理所有改变,因而变得很有效,对用户来说,最重要的是节 省了时间.sed必须通过行号和正则表达式指定要改变的文本行 sed怎样读取数据:sed从文件的一个文本行或从标准输入的几种格式中读取数

Extjs将gird中指定行的复选框勾选

在Extjs中,可以通过 selType添加复选框 Ext.define('ConnGrid', { title:'关联', extend: 'Ext.grid.Panel', xtype: 'checkbox-selection', store: connStore, selType: 'checkboxmodel', //复选框 ....此处省略... } ) var connGrid = Ext.create('ConnGrid'); 如果想要在表格加载数据时自动指定符合某个条件的数据自动

C# DataGridView 对指定行文字加粗实现阅读标记

在使用DataGridView控件放置通知等信息时,会遇到标记"已读"."未读"的问题.通过SQL语句查询出的结果中,"已读"."未读"会被放在一个专门的字段(DataGridView的列)中用来标记这个 条目的阅读情况.本文的目标就是要做到在显示上区分当前用户已读和未读的条目. 1.准备工作 建立一个C#窗体应用程序,里面放置一个Dock属性设置为Full的DataGridView 2.程序代码 在Load函数中,模拟生成了

Java如何实现按指定行读取文件

最近在开发实战中,遇到了一个这样的技术情景: 把log4j生成的日志文件定时刷进MySQL数据库,比如三个小时刷一次,那么每次刷数据的时候,如何控制文件读取是从上一次文件读取结束的地方开始继续读取的?并且本次要读取到文件结尾处.在网上各种搜索提问后,找到了一个叫RandomAccessFile Java类解决了问题. 先上代码: static int size=1;//主要是为了控制循环的次数,因为是定时刷,每次刷的文件行数可能不一样 static long chars=0;//chars指的是

SQL查询显示行号、随机查询、取指定行数据

1.显示行号 如果数据没有删除的情况下主键与行号是一致的,但在删除某些数据,行号就与主键不一致了,这时需要查询行号就需要用新的方法,在SQL Server2005之前,需要使用临时表,但在SQL Server2005中,使用ROW_NUMBER()非常方便. select row_number() over (order by UseriD) as rowNum,* from UserInfo 查询结果: 2.随机查询 有的时候我们需要查询出的数据是随机排序的,newid()函数在扫描每条记录时