So deaktivieren Sie bestimmte Kontrollkästchen in einer DataGridView CheckBox-Spalte

8

Ich habe eine winForm mit einem DataGridView-Steuerelement. Es enthält 5 Spalten, eine davon ist eine CheckBox-Spalte. Ich möchte Checkbox-Zelle dieser Spalte basierend auf dem Wert in einer anderen Spalte in der gleichen Zeile aktivieren / deaktivieren.

Ich kann die gesamte Spalte mithilfe von DisabledCheckBoxCell

Aber es macht die gesamte Spalte im deaktivierten Zustand.

Hier ist ein Ausschnitt von DataGridView,

Quellspalte | Zielspalte
wahr | aktiviert
wahr | aktiviert
falsch | deaktiviert

Hat jemand eine Idee, wie dies in .Net erreicht werden kann.

    
Vijay Balkawade 26.04.2012, 11:44
quelle

4 Antworten

20

Vijay,

DataGridViewCheckBoxColumn hat keine Eigenschaft, die als deaktiviert bezeichnet wird. Wenn Sie also den Stil des Kontrollkästchens ändern, sieht es so aus, als ob es deaktiviert wäre. Sehen Sie sich den folgenden Code an.

%Vor%     
mchicago 27.04.2012 19:47
quelle
1

Ich habe so etwas gemacht, um ein tatsächlich deaktiviertes Kontrollkästchen zu erhalten:

%Vor%     
test 15.04.2015 19:43
quelle
0

Verwenden Sie das RowDataBound-Ereignis für Ihre GridView. Sie können Ereignisargumente in Zeilen umwandeln, die Kontrolle über diese Zeile finden und sie deaktivieren. Dieses Ereignis wird für jede Zeile der Gridview ausgelöst, auch für Kopf- und Fußzeilen. Versuchen Sie also nicht, eine Ausnahme zu erfassen. Hier ist ein Code, der für Sie nützlich sein könnte

%Vor%     
Johnny_D 26.04.2012 11:50
quelle
0
%Vor%     
Reza Feizi 19.03.2018 09:15
quelle

Tags und Links