我有面對listview列調整大小的問題。如果你的主播/對接的listview比正常的winform比listview的主播或者對接效果還好。我的意思是listview會調整大小,並適合winforms作爲winforms最大化,但你已經設計的列,而不是與listview調整大小。調整ListView列以適應WinForms
我的問題是:有什麼辦法來調整列表視圖的列與列表視圖以適應winform的大小?
列表視圖設計規範:
private void Form1_Load(object sender, EventArgs e)
{
listView1.View = View.Details;
listView1.LabelEdit = true;
listView1.BackColor = Color.GreenYellow;
listView1.Columns.Add("Date", 100, HorizontalAlignment.Left);
listView1.Columns.Add("TransID", 50, HorizontalAlignment.Left);
listView1.Columns.Add("voucher", 100, HorizontalAlignment.Right);
listView1.Columns.Add("particulars", 300, HorizontalAlignment.Left);
listView1.Columns.Add("deposit", 100, HorizontalAlignment.Right);
listView1.Columns.Add("withdrawal", 100, HorizontalAlignment.Right);
string connstr = "server=.;initial catalog=DataBase;uid=UID;pwd=PWD";
SqlConnection con = new SqlConnection(connstr);
con.Open();
listView1.Items.Clear();
listView1.Refresh();
string sql = "select date=convert(varchar,date,103),transID,max(particulars)as particulars,sum(deposit)as deposit,sum(withdrawal) as withdrawal,voucher from debank group by date,transID,voucher";
SqlCommand cmd = new SqlCommand(sql, con);
SqlDataAdapter dap = new SqlDataAdapter(cmd);
DataSet ds = new DataSet();
dap.Fill(ds);
DataTable dt = ds.Tables[0];
for (int i = 0; i < dt.Rows.Count; i++)
{
DataRow dr = dt.Rows[i];
ListViewItem lvi = new ListViewItem(dr["date"].ToString());
lvi.SubItems.Add(dr["transID"].ToString());
lvi.SubItems.Add(dr["voucher"].ToString());
lvi.SubItems.Add(dr["particulars"].ToString());
lvi.SubItems.Add(dr["deposit"].ToString());
lvi.SubItems.Add(dr["withdrawal"].ToString());
listView1.Items.Add(lvi);
listView1.FullRowSelect = true;
}
SizeLastColumn(listView1);
}
@LexRema,我用Listview Design編輯了我的問題。您的代碼對調整大小的問題進行排序,但前四列和最後一列的其餘列保持較長的距離。 – mahesh 2011-01-26 09:45:09
@LexRema,如何解決其餘四個以前的列距離問題? – mahesh 2011-01-26 09:57:15