ho una listview
la quale ha degli anchor nella form, quando la listview si allarga vorrei allargare anche le colonne e restringerle in proprozione
ho già creato del codice
funziona anche piuttosto bene, purtroppo essendo che il fattore deve essere decimal visto che la form può allargarsi o stringersi quindi può assumere valori oltre che (1,2,3) anche di (0.1,0.5)codice:private int originalwidtlistView1 = 0;//per ridimensionare le colonneListview private void Form1_Load(object sender, EventArgs e) { //salvo orignale form originalwidtlistView1 = listView1.Width; } private void Form1_Resize(object sender, EventArgs e) { listView1.SuspendLayout(); Decimal fattore = 0; fattore = Decimal.Divide(listView1.Width, originalwidtlistView1); foreach (ColumnHeader column in listView1.Columns) { Decimal w =column.Width * fattore; column.Width = int.Parse(Decimal.Round(w, 0).ToString()); } originalwidtlistView1 = listView1.Width;//risalvo listView1.ResumeLayout(); }
e il width è un tipo int ecco che ho dovuto fare un ROUND il quale dopo qualche volta che allargo e stringo sfalza tutto
consigli per far rimanere uguali a prima anche dopo vari tentativi?