浏览模式: 普通 | 列表
5月, 2006 | 1

ListView的按列排序类实现

[ 2006-05-09 21:32:23 | 作者: admin ]
tianyang:测试发现,对于空白列的排序还是会报错,呵呵,try{}catch{}下好象结果就不准确了.


//下面这句放在程序前面初始化
private int sortColumn = -1;


//列点击事件
  private void listView1_ColumnClick(object sender, System.Windows.Forms.ColumnClickEventArgs e)
    {
      if(this.listView1.SelectedItems.Count!=0)
        this.listView1.SelectedItems.Clear();
      if (e.Column != sortColumn)
...

阅读全文…

多重大规模循环的结束方法

[ 2006-05-09 18:03:11 | 作者: admin ]
如果想安全结束的话,设置停止标签,然后join线程结束;
否则,你可以用线程的abort或者Application.ExitThread之类的来强行关闭线程。
建议使用BackgroundWorker + WaitDialog实现!

如果在循环中确定窗体不会假死,就使用:

bool StopFlag = false; //在循环外设置一个停止标签

for(int i=0;i<1000;i++)
{
    if(StopFlag == true)break; //最好定义在顶级循环中允许停止,否则可能出现运算错误
    for(int j=0;j<10;j++)
    {
      //....
    }
}

btnStop_Click(...) //按钮事件
{
    this.StopFlag = true;
    this.btnStop.Enabled = false;
}

OpenFileDialog

[ 2006-05-09 12:30:37 | 作者: admin ]
private void button1_Click(object sender, System.EventArgs e)
{
      // Displays an OpenFileDialog so the user can select a Cursor.
      OpenFileDialog openFileDialog1 = new OpenFileDialog();

      openFileDialog1.Filter = "Cursor Files|*.cur";
      //openFileDialog1.Filter = "txt files (*.txt)|*.txt";

      openFileDialog1.Title = "Select a Cursor File";

      // Show the Dialog.
...

阅读全文…

ListView

[ 2006-05-09 11:28:07 | 作者: admin ]
listView1.View = View.Details ;
listView1.Columns.Add("第一列", 50, HorizontalAlignment.Left);

listView1.Columns.Add("第二列", 50, HorizontalAlignment.Left);

ListViewItem item = new ListViewItem("1");
item.SubItems.Add("2");
listView1.Items.Add(item);

1