dataGridView: Text löschen -> cell.value=null ??

08/10/2007 - 08:51 von WolfgangH | Report spam
Guten Morgen Leute,
insbesondere Frank, da es sein Spezialgebiet betrifft.

Ich habe ein 2-spaltiges dataGridView (aux XML-Datei ohne DB-Anbindung), in
dem der User rechts Texte àndern kann. Sind leere Texte vorhanden, àndere ich
mit CellFormatting die Hintergrundfarbe.
==> Zellwert hier: e.Value.ToString()="" (funktioniert prima!)

Problem:
Löscht der User den Zellinhalt, ist der Zellinhalt nicht leer sondern null
==> Zellwert hier: e.Value=null

Folge-Problem:
Dies bereitet mir auch an anderer Stelle Probleme, da ich die aktuelle
Textlànge als Balken anzeige.

Frage:
Warum ist der Zellinhalt nicht einfach leer, bzw. wie kann man das
erzwingen, oder wie soll man damit umgehen?


Danke schon mal für Hinweise
Wolfgang
 

Lesen sie die antworten

#1 Lars-Iver Kruse
08/10/2007 - 10:23 | Warnen spam
Hallo Wolfgang,

Ich habe ein 2-spaltiges dataGridView (aux XML-Datei ohne DB-Anbindung),
in
dem der User rechts Texte àndern kann. Sind leere Texte vorhanden, àndere
ich
mit CellFormatting die Hintergrundfarbe.
==> Zellwert hier: e.Value.ToString()="" (funktioniert prima!)

Problem:
Löscht der User den Zellinhalt, ist der Zellinhalt nicht leer sondern null
==> Zellwert hier: e.Value=null

Folge-Problem:
Dies bereitet mir auch an anderer Stelle Probleme, da ich die aktuelle
Textlànge als Balken anzeige.

Frage:
Warum ist der Zellinhalt nicht einfach leer, bzw. wie kann man das
erzwingen, oder wie soll man damit umgehen?



hast Du mal folgendes probiert?

void dataGridView1_CellValueChanged(object sender, DataGridViewCellEventArgs
e)
{
if (dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex].Value == null)
{
dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex].Value = "";
}
}

Damit wàre der Value leer und nicht null. Du bekommst so zwar einen zweiten
CellValueChanged, aber das wirst Du verschmerzen können, rekursiv wird das
nicht.

Wenn es elegantere Wege gibt, bin ich daran natürlich auch interessiert.


Viele Grüße, Lars


lik consulting
http://www.lik.de

Ähnliche fragen