dataGridView Events Propertys

25/03/2010 - 17:41 von Uli Münch | Report spam
Hallo NG,

gibt es ein Resize-Event für die Columns des dateGridView?
Wenn nein wie macht Ihr, das die Änderungen dieser Grössen gespeichert und
wieder aufgerufen werden?

Welche Möglichkeit habe ich, BackColor für die Zeilen des dateGridView
unterschiedlich vorzugeben?
Also z,B, der Übersichlichkeit halber, jede zweite Zeile grau statt weiss?
Oder Summenzeilen rot usw.?

Ich bedanke mich für jeden Tipp.

mfG
Uli Münch
 

Lesen sie die antworten

#1 Frank Dzaebel
25/03/2010 - 22:06 | Warnen spam
Hallo Uli,

es ist für die User hier immer von Vorteil, wenn
ein kleines Feedback am Ende des Threads gegeben wird.

gibt es ein Resize-Event für die Columns des dateGridView?
Wenn nein wie macht Ihr, das die Änderungen dieser Grössen gespeichert
und wieder aufgerufen werden?



Wie meistens, mit den Properties.Settings.Default, bzw.
den typsicheren Settings im Normalfall. Z.B:

[DataGridView with Persistent Column Widths and Order - CodeProject]
http://www.codeproject.com/KB/grid/...dView.aspx

Beachte aber, dass sich ja Daten àndern können und man dann
vielleicht eher über eine Automatik geht:

[DataGridViewAutoSizeColumnMode-Enumeration (System.Windows.Forms)]
http://msdn.microsoft.com/de-de/lib...nmode.aspx




Welche Möglichkeit habe ich, BackColor für die Zeilen des dateGridView
unterschiedlich vorzugeben?
Also z,B, der Übersichlichkeit halber, jede zweite Zeile grau statt
weiss?
Oder Summenzeilen rot usw.?



[DataGridView.AlternatingRowsDefaultCellStyle-Eigenschaft
(System.Windows.Forms)]
http://msdn.microsoft.com/de-de/lib...style.aspx

[Gewusst wie: Festlegen von abwechselnden Zeilenstilen für das
DataGridView-Steuerelement in Windows Forms]
http://msdn.microsoft.com/de-de/lib...h0a6h.aspx

[Gewusst wie: Festlegen von abwechselnden Zeilenstilen für das Windows
Forms-Steuerelement DataGridView mithilfe des Designers]
http://msdn.microsoft.com/de-de/lib...sk148.aspx

[Zellstile im DataGridView-Steuerelement in Windows Forms]
http://msdn.microsoft.com/de-de/lib...f90x0.aspx

Also etwa:

public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}

DataGridView dgv = new DataGridView();

private void Form1_Load(object sender, EventArgs e)
{
var col = new DataGridViewTextBoxColumn();
col.HeaderText = "Letztes Datum";
col.Name = "Last Prepared";
col.ValueType = typeof(DateTime);
dgv.Columns.Add(col);

col = new DataGridViewTextBoxColumn();
col.HeaderText = "Bewertung";
col.Name = "Rating";
col.ValueType = typeof(int);
dgv.Columns.Add(col);

for (int i = 0; i < 20; i++)
dgv.Rows.Add(DateTime.Now.Date.AddMonths(i), i);
Controls.Add(dgv);
InitializeDataGridView();
}

// Configures the appearance and behavior of a DataGridView control.
private void InitializeDataGridView()
{
// Initialize basic DataGridView properties.
dgv.Dock = DockStyle.Fill;
dgv.BackgroundColor = Color.LightGray;
dgv.BorderStyle = BorderStyle.Fixed3D;

// Set property values appropriate for read-only display and
// limited interactivity.
dgv.AllowUserToAddRows = false;
dgv.AllowUserToDeleteRows = false;
dgv.AllowUserToOrderColumns = true;
dgv.ReadOnly = true;
dgv.SelectionMode = DataGridViewSelectionMode.FullRowSelect;
dgv.MultiSelect = false;
dgv.AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.None;
dgv.AllowUserToResizeColumns = false;
dgv.ColumnHeadersHeightSizeMode DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
dgv.AllowUserToResizeRows = false;
dgv.RowHeadersWidthSizeMode DataGridViewRowHeadersWidthSizeMode.DisableResizing;

// Set the selection background color for all the cells.
dgv.DefaultCellStyle.SelectionBackColor = Color.White;
dgv.DefaultCellStyle.SelectionForeColor = Color.Black;

// Set RowHeadersDefaultCellStyle.SelectionBackColor so that its
default
// value won't override
DataGridView.DefaultCellStyle.SelectionBackColor.
dgv.RowHeadersDefaultCellStyle.SelectionBackColor = Color.Empty;

// Set the background color for all rows and for alternating rows.
// The value for alternating rows overrides the value for all rows.
dgv.RowsDefaultCellStyle.BackColor = Color.LightGray;
dgv.AlternatingRowsDefaultCellStyle.BackColor = Color.DarkGray;

// Set the row and column header styles.
dgv.ColumnHeadersDefaultCellStyle.ForeColor = Color.White;
dgv.ColumnHeadersDefaultCellStyle.BackColor = Color.Black;
dgv.RowHeadersDefaultCellStyle.BackColor = Color.Black;

// Set the Format property on the "Last Prepared" column to cause
// the DateTime to be formatted as "Month, Year".
dgv.Columns["Last Prepared"].DefaultCellStyle.Format = "y";

// Specify a larger font for the "Ratings" column.
using (Font font = new Font(
dgv.DefaultCellStyle.Font.FontFamily, 25, FontStyle.Bold))
dgv.Columns["Rating"].DefaultCellStyle.Font = font;

dgv.AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.AllCells;
}
}


ciao Frank
Dipl.Inf. Frank Dzaebel [MCP/MVP C#]
http://Dzaebel.NET

Ähnliche fragen