2012-01-02 23 views
13

Nella mia griglia avevo seguente riga di codice che il ridimensionamento manuale disattivato dell'utente:impostazione Altezza riga nel codice e manuale di disabilitazione DataGridView ridimensionare

dgvTruckAvail.AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.AllCells; 

Ora ho bisogno di impostare l'altezza della colonna nel codice e non ha funzionato (vedi DataGridView setting row height doesn't work)

Ho pensato che fosse questa linea di codice a causare problemi di non dimensionamento. Tuttavia, ora ho bisogno di capire come

  1. file Dimensione in codice

e

  1. Impedire dimensionamento utente filari stessi

Eventuali puntatori?

risposta

26

Set:

dgvTruckAvail.AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.None; 
dgvTruckAvail.AllowUserToResizeRows = false; 

Ciò disattiverà fila ridimensionamento automatico e fila ridimensionamento manuale. Per impostare l'altezza della riga è possibile utilizzare le proprietà Height e MinimumHeight di RowTemplate.

+0

Grazie! All'inizio non si è notato, ma ho notato un'altra proprietà impostata su RowTemplate .. – katit

+0

Ho trovato che l'impostazione di Row.Height non funzionava fino a dopo che DataGridView.Visible era impostato su True. Così ho inserito il codice Row.Height nel gestore di eventi VisibleChanged. – gmlobdell

+0

Ad esempio: 'vuoto privato Dgv_VisibleChanged (oggetto mittente, EventArgs e) { if (mittente è DataGridView && ((DataGridView) mittente).Visibile) { DataGridView dgv = sender come DataGridView; SetRowHeight (dgv); } } ' – gmlobdell

0

Nel set finestra delle proprietà:

AllowUserToResizeRows = False

3

Impostazione delle dimensioni di riga è una vera e propria sfida. Controlla quanti grip e risposte ci sono sul web. Ho scoperto che a volte un modo funziona e altre volte non funziona più.

Procedura: Inserire un oggetto DataGridView nel modulo. Modifica e aggiungi diverse colonne. Non importa quello che sono perché scaricherai questo DGV in un attimo. Passa alle proprietà di questo oggetto DataGridView e modifica RowTemplate/Height a qualcosa di piccolo o grande (solo così puoi vederlo funzionare). Aggiungi una riga di codice nel tuo metodo per impostare XXX.RowCount su qualcosa come 12 solo per popolare questo test DataGridView. Esegui il tuo codice per verificare che l'altezza della riga sia cambiata.

codice Aprire le XXX.Designer.cs. Espandi il "codice generato da Windows Form Designer" e cerca il codice che si applica a ciò che hai appena fatto con DataGridView. Copia tutto nel metodo in cui stai cercando di regolare/impostare l'altezza della riga. Commenta tutto il tuo codice. Riga per riga, modifica il codice generato automaticamente per utilizzare il nome dell'oggetto. Prova ripetutamente per qualsiasi errore e isolalo in quel momento.

Ora tornare indietro e cancellare questo oggetto di prova DataGridView.

Problemi correlati