Ahoj, narazil jsem na dvě nepříjemnosti. Obě se týkají dataGridViewu, ale jinak spolu vzájemně nesouvisejí. 1) Vzhled dataGridViewu jsem nastavoval pomocí AlternatingRowsDefaultCellStyle a DefaultCellStyle v properties. Vzhled je tak jak má být až na to, že se mi samovolně nastavuje tučné písmo (bold=true). Někdy se to projeví u defaultCell i alternatingCell, někdy jen u jedné z nich. Projevuje se to tak, že nastavím písmo bold=false zkompiluju projekt a vše je ok. Pokud ale projekt zkompiluju podruhé, automaticky naskočí tučné písmo a to i v případě, že s tímto dataGridViewem nic nedělám. Dělá to jen u některých DataGridView v aplikaci. Rozhodně ne u všech. Ručně jsem nic v automaticky generovaných souborech neměnil. 2) Mám nastaveno AutoSizeColumnsMode=Fill a chtěl jsem nastavit MinimumWidth každého sloupce. Nastavení dělám takto:
'naplnění dgv daty
dtHledatData = vyhledatData(ID)
Me.dgv1.DataSource = dtHledatData
'formát DGV
Me.dgv1.Columns(1).DefaultCellStyle.Format = "MM'/'yyyy" 'období-pouze měsíc a rok
Me.dgv1.Columns(2).DefaultCellStyle.Format = "MM'/'yyyy" 'období-pouze měsíc a rok
Me.dgv1.Columns(3).DefaultCellStyle.Format = "C" 'měna
Me.dgv1.Columns(4).DefaultCellStyle.Format = "C" 'měna
Me.dgv1.Columns(5).DefaultCellStyle.Format = "dd'/'MM'/'yyyy HH:mm:ss" 'datum a čas
'MIN šířky sloupců DGV
Me.dgv1.Columns(0).MinimumWidth = 105
Me.dgv1.Columns(1).MinimumWidth = 105
Me.dgv1.Columns(2).MinimumWidth = 105
Me.dgv1.Columns(3).MinimumWidth = 190
Me.dgv1.Columns(4).MinimumWidth = 190
Me.dgv1.Columns(5).MinimumWidth = 135
V tomto použití ale vyskočí vyjímka: Object reference not set to an instance of an object. Nechápu ale proč, protože si myslím že k tomu nemá důvod. Odkazuju se na existující naplněný dataGridView ve kterém jsou data s příslušnými sloupci. Navíc nastavení formátu buněk které je předtím se provede korektně. Zajímavé také je, že pokud dám kód na nastavení MinimumWidth do nějákého buttonu a použiju ho po načtení dat, nastavení šířky sloupců se bez odmlouvání provede. Pro úplnost mám Visual Studio 2005 Profesional a aplikace je na -Net 2. Nesetkal jste se někdo s těmito zvláštnostmi?
|