C# listview C中的大写项
如何将listview中的字符大小写更改为大写?当我在combobox中选择大写时,listview中的项目应该是大写的。我希望有人能帮我。提前谢谢C# listview C中的大写项,c#,winforms,listview,C#,Winforms,Listview,如何将listview中的字符大小写更改为大写?当我在combobox中选择大写时,listview中的项目应该是大写的。我希望有人能帮我。提前谢谢 private void Form1_Load(object sender, EventArgs e) { showlv("SELECT a.customer_name, a.address, b.product_name, b.price FROM tbl_customer AS a INNER JOIN tbl_tra
private void Form1_Load(object sender, EventArgs e)
{
showlv("SELECT a.customer_name, a.address, b.product_name, b.price FROM tbl_customer AS a INNER JOIN tbl_transaction AS b WHERE a.customer_code = b.customer_code", lvcust);
}
private void showlv(string sql, ListView lv)
{
try
{
lvcust.View = View.Details;
lvcust.FullRowSelect = true;
lvcust.GridLines = true;
conn.Open();
MySqlDataAdapter sda = new MySqlDataAdapter(sql, conn);
DataTable dt = new DataTable();
sda.Fill(dt);
conn.Close();
for (int i = 0; i < dt.Rows.Count; i++)
{
DataRow dr = dt.Rows[i];
ListViewItem lvitem = new ListViewItem(dr["customer_name"].ToString());
lvitem.SubItems.Add(dr["address"].ToString());
lvitem.SubItems.Add(dr["product_name"].ToString());
lvitem.SubItems.Add(dr["price"].ToString());
lvcust.Items.Add(lvitem);
}
string[] column = new string[4] { "Customer Name", "Address", "Product Name", "Price" };
for (int x = 0; x < column.Length ; x++)
{
lvcust.Columns.Add(column[x]);
}
}
catch (Exception er)
{
MessageBox.Show(er.Message);
}
}
private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
if (comboBox1.SelectedItem.Equals("Ascend"))
{
lvcust.Sorting = SortOrder.Ascending;
}
else if (comboBox1.SelectedItem.Equals("Descend"))
{
lvcust.Sorting = SortOrder.Descending;
}
else if (comboBox1.SelectedItem.Equals("Uppercase"))
{
//code to uppercase items in listview
}
}
最好在事件处理程序中为复选框添加案例更改方法以上载它
因此,您可以双击复选框控件,然后遍历组合框中的项目,然后在每次迭代时将项目的内容设置为自身,并在末尾添加一个.ToUpper。我假设您只想将客户名称大写。诀窍是将原始值存储为ListItem的标记。这样,如果需要,您可以稍后将文本更改回原始的非大写值。因此,在您的代码中,找到第一行并在下面添加第二行:
ListViewItem lvitem = new ListViewItem(dr["customer_name"].ToString());
lvitem.Tag = dr["customer_name"].ToString();
现在您已经知道了,下面是将其转换为大写的for循环:
ListViewItemCollection items = lvcust.Items;
for(int i=0;i<items.Count;i++){
ListViewItem item = items.Item[i];
object tag = item.Tag;
if(tag is string){
item.Text = ((string)tag).ToUpper();
}
}
这一切都是在文本编辑器中,在我的脑海中完成的,因此这里或那里可能会有语法问题,但逻辑应该是正确的。你能发布整个代码吗,因为我是这门语言的新手。如果你发布你的代码,你会更容易。Jay使用google new还是不使用来吧,显示出更多的努力……我整晚都在使用google但是我找不到任何类似的方法来解决我的问题