Heim >Backend-Entwicklung >C++ >Wie setze ich einen Combobox -SelectedValue in einem zweiten Formular ein, indem Sie eine DataGridView -Zeile im ersten Formular auswählen?
Szene:
Windows Forms -Anwendungen erfordern häufig eine Dateninteraktion zwischen mehreren Fenstern, z. B. das Ausfüllen von Steuerelementen in einem anderen Fenster entsprechend der Auswahl eines Fensters.
<:> Frage:
So richten Sie den ausgewählten Wert des zweiten Fensters ein, indem Sie die Zeile im ersten Fenster auswählen, um die Zeile in der DataGridView festzulegen, um den Combobox zu füllen, um den Combobox mit diesem Wert zu füllen? Lösung:
In Windows -Formularen ähneln die Fenster anderen C#-Kategorien, und die Kommunikationsmethoden zwischen den Fenstern entsprechen der Kommunikationsmethode zwischen -klassifisch.
Betrieb das zweite Fenster im ersten Fenster:
Konstruktfunktion Parameterübertragung:
Fügen Sie dem Konstruktor des zweiten Fensters die erforderlichen Parameter hinzu. Beim Erstellen einer zweiten Fensterinstanz wird der Wert an den Konstruktor übergeben. öffentliche Attribute oder Methoden:
Erstellen Sie öffentliche Attribute oder Methoden im zweiten Fenster und setzen Sie diese Attribute nach dem Erstellen einer zweiten Fensterinstanz. Auf diese Weise kann das zweite Fenster auf diese Werte zugreifen.in die Aktionskommission injizieren: Definieren Sie ein öffentliches Attribut der Aktion, die im zweiten Fenster anvertraute Typen. Verwenden Sie beim Erstellen einer zweiten Fensterinstanz eine benutzerdefinierte Aktion, um das Attribut zuzuweisen. Wenn Sie das erste Fenster bedienen müssen, rufen Sie die Aktion im zweiten Fenster an.
im ersten Fenster:
Das erste Fenster arbeitet aus dem zweiten Fenster
Beispiel 3 -Überträgen Sie die Instanz des ersten Fensters zum zweiten Fenster und verwenden Sie eine öffentliche Methode:
beim Erstellen von Form2:<code class="language-csharp">public partial class Form2 : Form { int selectedValue; public Form2(int value) { InitializeComponent(); selectedValue = value; } private void Form2_Load(object sender, EventArgs e) { // 加载数据 this.comboBox1.DataSource = new MyDbContext().Categories.ToList(); // 假设Categories是数据库表 this.comboBox1.DisplayMember = "Name"; this.comboBox1.ValueMember = "Id"; this.comboBox1.SelectedValue = selectedValue; } }</code>
Diese Beispiele zeigen die Implementierung verschiedener Methoden zur Auswahl, hängt vom spezifischen Anwendungsszenario und der Codestruktur ab. Es wird empfohlen, die Verwendung öffentlicher Attribute oder Methoden vorrangig zu machen, um die direkte öffentliche Kontrolle zur Verbesserung der Wartung und Lesbarkeit des Codes zu vermeiden.
<code class="language-csharp">int value = 2; // 或从DataGridView获取 Form2 f = new Form2(value); f.ShowDialog();</code>
Das obige ist der detaillierte Inhalt vonWie setze ich einen Combobox -SelectedValue in einem zweiten Formular ein, indem Sie eine DataGridView -Zeile im ersten Formular auswählen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!