Erhalten Sie den Wert/text aus einer Spalte in einem Gridview in ASP.net C# zum anzeigen in einem label
Ich habe eine gridview
, die eine Liste von Verkäufer Namen. Wenn ein Verkäufer ist, ausgewählt mit Einem ButtonFieldTemplate
im Grid
. Ich brauche den Namen des ausgewählten Verkäufer erscheinen in einem Label
.
Bisher habe ich dies, aber es funktioniert nicht:
protected void gvSalesmanByManager_SelectedIndexChanged(object sender, EventArgs e)
{
lblSalesmanCustomers.Text = gvSalesmanByManager.SelectedValue + "'s Customers";
}
Es ist nicht werfen Fehler. Nicht einmal rote Wellenlinien in Visual Studio. Es ist einfach nur nicht arbeiten.
Wie kann ich dies erreichen, in ASP.net und C# 4.0.
- Können wir sehen, welche code hast du bisher mit dem event und alles?
- Mein code bisher : protected void gvSalesmanByManager_SelectedIndexchanged(object sender, EventArgs e) { lblSalesmanCustomers.Text = gvSalesmanByManager.SelectedValue + "'s Kunden"; }
Du musst angemeldet sein, um einen Kommentar abzugeben.
Bezug auf die Dokumentation SelectedValue wird die data-Taste den Wert der ausgewählten Zeile in einem GridView-Steuerelement. Hat Ihr GridView eine Spalte enthalten, die mit dem Schlüssel und du hast eingestellt das dataKeyNamesProperty (wie datakeynames="myID")?
BEARBEITEN:
Zugriff auf den Wert einer Spalte aus, die Sie verwenden können, SelectedRow:
EDIT2:
Es gibt zwei Möglichkeiten, wenn Sie wollen, Lesen Sie das Feld Vorlage eingeben. Entweder Sie speichern Ihren Wert in einer unsichtbaren Spalte oder Sie Zugriff auf die Steuerelemente in das Feld Vorlage eingeben. So etwas wie dies funktionieren sollte:
Stellen Sie sicher, Sie sind nicht die Zuordnung leeren text auf der Seite load-Ereignis.
oder Sie müssen die Initialisierung if(!Seite.IsPostback) block
Mein code bisher : protected void gvSalesmanByManager_SelectedIndexchanged(object sender, EventArgs e) { lblSalesmanCustomers.Text = gvSalesmanByManager.SelectedValue + "'s Kunden"; } –
versuchen in der Veranstaltung "gvSalesmanByManager_SelectedIndexchanged" folgenden code:
lblSalesmanCustomers.Text = gvSalesmanByManager.SelectedRow.Felder[0].Text;
Sie sagte etwas von einem "ButtonFieldTemplate" bitte zeigen Sie mir einige code aus dem ascx-Datei dies wird uns helfen viel, denke ich.
*Bearbeiten:
"Kontrollen[1]" nicht im Recht zu sein. Aber 0 ist ein literal. man könnte auch den code Debuggen und breakpoints setzen. viel einfacher wäre.
versuchen Sie, diese mit Linkbutton:
LinkButton-lnk1 = gvSalesmanByManager.SelectedRow.Felder[0].Bedienelemente[1] als LinkButton;
lblSalesmanCustomers.Text = lnk1.Text;
beste Grüße,
niemand