The Visual Studio.NET about C#

来源:互联网 发布:曼尼托巴大学 知乎 编辑:程序博客网 时间:2024/05/16 08:09
 

C#关于ListView控件中对数据排序或统计功能应用

在ListViewItemComparer.cs类中输入;

class ListViewItemComparer : IComparer

{

private int col;

public ListViewItemComparer()

{

col = 0;

}

public ListViewItemComparer(int column)

{

col = column;

}

public int Compare(object x, object y)

{

return String.Compare(((ListViewItem)x).SubItems[col].Text, ((ListViewItem)y).SubItems[col].Text);

}

}

在窗体代码中输入;

private void Form1_Load(object sender, EventArgs e)

{

getScoure("select * from tb_05");

}

public void getScoure(string strName)

{

SqlConnection con = new SqlConnection("server=(local);uid=sa;pwd=sa;database=数据库名称");

con.Open();

SqlCommand com = new SqlCommand(strName, con);

SqlDataReader dr = com.ExecuteReader();

listView1.View = View.Details;

listView1.GridLines = true;

listView1.FullRowSelect = true;

listView1.Items.Clear();

while (dr.Read())

{

ListViewItem lv = new ListViewItem(dr[0].ToString());

lv.SubItems.Add(dr[1].ToString());

lv.SubItems.Add(dr[2].ToString());

listView1.Items.Add(lv);

}

dr.Close();

con.Close();

}

private void button1_Click(object sender, EventArgs e)

{

getScoure("select * from tb_05  order by 销售数量 asc");

}

private void button2_Click(object sender, EventArgs e)

{

getScoure("select * from tb_05 order by 销售数量 desc");

}

C#关于ListView控件在列表视图中拖动视图项功能应用

private void listView1_ItemDrag(object sender, ItemDragEventArgs e)

{//起动拖放放操作,设置拖放类型,为

listView1.DoDragDrop(listView1.SelectedItems, DragDropEffects.Move);

}

//选返要拖动的项

private void listView1_DragEnter(object sender, DragEventArgs e)

{//获取ListView类型数据

for (int i = 0; i <= e.Data.GetFormats().Length - 1; i++)

{

if(e.Data.GetFormats()[i].Equals("System.Windows.Forms.ListView+SelectedListViewItemCollection"))

{

e.Effect = DragDropEffects.Move;

}

}

}

private void listView1_DragDrop(object sender, DragEventArgs e)

{

//判断是否选择拖放的项,

if (listView1.SelectedItems.Count == 0)

{

return;

}

//定义项的坐标点

Point cp = listView1.PointToClient(new Point(e.X, e.Y));//

ListViewItem dragToItem = listView1.GetItemAt(cp.X, cp.Y);

if (dragToItem == null)

{

return;

}

int dragIndex = dragToItem.Index;

ListViewItem[] sel = new ListViewItem[listView1.SelectedItems.Count];

for (int i = 0; i <= listView1.SelectedItems.Count - 1; i++)

{

sel[i] = listView1.SelectedItems[i];

}

for (int i = 0; i < sel.GetLength(0); i++)

{

ListViewItem dragItem = sel[i];

int itemIndex = dragIndex;

if (itemIndex == dragItem.Index)

{

return;

}

if (dragItem.Index < itemIndex)

itemIndex++;

else

itemIndex = dragIndex + i;

ListViewItem insertItem = (ListViewItem)dragItem.Clone();

listView1.Items.Insert(itemIndex, insertItem);

listView1.Items.Remove(dragItem);

}

}

C#关于treeView控件连接数据库的功能应用

treeView1.ShowLines = true;

treeView1.ImageList = imageList1;

SqlConnection con = new SqlConnection("server=(local);uid=sa;pwd=sa;database=db_02");

con.Open();

SqlCommand com = new SqlCommand("select * from tb_07", con);

SqlDataReader dr = com.ExecuteReader();

TreeNode newNode1 = treeView1.Nodes.Add("A","商品信息",1,2);//一级节点

while (dr.Read())

{

TreeNode newNode12 = new TreeNode("商品编号" + dr[1].ToString(),3,4);// 二级节点

     // 3表示没有单击节点时显示的图标索引值,

     newNode12.Nodes.Add("A","商品名称:" + dr[0].ToString(),5,6);

     newNode12.Nodes.Add("A","商品数量:" + dr[3].ToString(),7,8);

     newNode12.Nodes.Add("A", "商品价格:" + dr[2].ToString(),9,10);

     newNode1.Nodes.Add(newNode12);

}

dr.Close();

con.Close();

treeView1.ExpandAll();

注意:需要引用using System.Data. SqlClient;命名空间                              

C#关于treeView与listView的遍历磁盘目录的功能应用

private void Form1_Load(object sender, EventArgs e)

        {

           TreeNode CountNode = new TreeNode("我的电脑");//初始化TreeView控件添加总结点

           TreeViewFile.Nodes.Add(CountNode);

           ListViewShow(CountNode);       //初始化ListView控件

        }

        //

        private void ListViewShow(TreeNode NodeDir)//初始化ListView控件,把TrreView控件中的数据添加进来

        {

            ListViewFile.Clear();

 

            try

            {

                if (NodeDir.Parent == null)// 如果当前TreeView的父结点为空,就把我的电脑下的分区名称添加进来

                {

                    foreach (string DrvName in Directory.GetLogicalDrives())//获得硬盘分区名

                    {

                        ListViewItem ItemList = new ListViewItem(DrvName);

                        ListViewFile.Items.Add(ItemList);//添加进来

                    }

                }

                else//如果当前TreeView的父结点不为空,把点击的结点,做为一个目录文件的总结点

                {

                    foreach (string DirName in Directory.GetDirectories((string)NodeDir.Tag))//编历当前分区或文件夹所有目录

                    {

                        ListViewItem ItemList = new ListViewItem(DirName);

                        ListViewFile.Items.Add(ItemList);

                    }

                    foreach (string FileName in Directory.GetFiles((string)NodeDir.Tag))//编历当前分区或文件夹所有目录的文件

                    {

                        ListViewItem ItemList = new ListViewItem(FileName);

                        ListViewFile.Items.Add(ItemList);

                    }//

                }

            }

            catch { }

        }//

        private void ListViewShow(string DirFileName)//获取当有文件夹内的文件和目录

        {

            ListViewFile.Clear();

            try

            {

                foreach (string DirName in Directory.GetDirectories(DirFileName))

                {

                    ListViewItem ItemList = new ListViewItem(DirName);

                    ListViewFile.Items.Add(ItemList);

                }

                foreach (string FileName in Directory.GetFiles(DirFileName))

                {

                    ListViewItem ItemList = new ListViewItem(FileName);

                    ListViewFile.Items.Add(ItemList);

                }

            }

            catch { }

        }

        private void TreeViewShow(TreeNode NodeDir)//初始化TreeView控件

        {

            try

            {

                if (NodeDir.Nodes.Count == 0)

                {

                    if (NodeDir.Parent == null)//如果结点为空显示硬盘分区

                    {

                        foreach (string DrvName in Directory.GetLogicalDrives())

                        {

                            TreeNode aNode = new TreeNode(DrvName);

                            aNode.Tag = DrvName;

                            NodeDir.Nodes.Add(aNode);

                        }

                    }// end

                    else// 不为空,显示分区下文件夹

                    {

                        foreach (string DirName in Directory.GetDirectories((string)NodeDir.Tag))

                        {

                            TreeNode aNode = new TreeNode(DirName);

                            aNode.Tag = DirName;

                            NodeDir.Nodes.Add(aNode);

                        }

                    }

                }

            }

            catch { }

        }

        private void TreeViewFile_AfterSelect(object sender, TreeViewEventArgs e)

        {

            ListViewShow(e.Node);

            TreeViewShow(e.Node);

        }

        private void ListViewFile_DoubleClick(object sender, EventArgs e)

        {

            foreach (int ListIndex in ListViewFile.SelectedIndices)

            {

                ListViewShow(ListViewFile.Items[ListIndex].Text);

           

        }

注意:需要引用using System.Text;和using System.IO;命名空间                     

C#关于TrackBar的简单功能应用

 //控制进度条

private void timer1_Tick(object sender, EventArgs e)

{

if (progressBar1.Value == progressBar1.Maximum)

     {

     progressBar1.Value = progressBar1.Minimum;

     }

     else

     {

         progressBar1.PerformStep();//增加进度

     }// end

     int intBar;

     intBar = 100 * (progressBar1.Value - progressBar1.Minimum) / (progressBar1.Maximum - progressBar1.Minimum);

     label2.Text = intBar.ToString() + "%";

 }

//设置Timer控件Interval属性

private void trackBar1_Scroll(object sender, EventArgs e)

{

timer1.Interval = Convert.ToInt16(10000/trackBar1.Value);

}

//起动Timer控件

private void button1_Click(object sender, EventArgs e)

{

if (timer1.Enabled ==true)

{

timer1.Enabled = false;

button1.Text = "开始";

}

else

{

timer1.Enabled = true;

button1.Text = "停止";

}

}

注意:需要添加一个时间控件                                                     

C#关于动态添加控件功能的应用

public int counter = 1;

private void Form1_MouseDown(object sender, MouseEventArgs e)

{

TextBox txtx=new TextBox();

//设定他的名称和Text属性,以及产生的位置

txtx.Left = e.X;

txtx.Top = e.Y;

txtx.Name = "TextBox " + counter;

txtx.Text = "文本框" + counter;

//为产生的新的TextBox组件设定事件,本文中为产生的文本框设定了2个事件

txtx.Click += new EventHandler(txtx_Click);

txtx.MouseEnter += new EventHandler(txtx_MouseEnter);

//在窗体中显示此文本框

this.Controls.Add(txtx);

counter++;

}

//定义事件

private void txtx_Click(object sender, System.EventArgs e)

{

if (sender.GetType() == typeof(TextBox))

{

TextBox control = (TextBox)sender;

MessageBox.Show(control.Text + "被按动了!");

}

}

private void txtx_MouseEnter(object sender, System.EventArgs e)

{

TextBox currentTextBox = (TextBox)sender;

//设定按钮的背景色

currentTextBox.BackColor = Color.Yellow;

 

}

原创粉丝点击