2016-07-13 4 views
0

Ich habe Schwierigkeiten, herauszufinden, ob es einen Weg gibt einen Link in einem Text zu erstellen, die eine andere Funktion in einem Programm löst ich gemacht, im Grunde, was ich jetzt haben das ist:C# Link in TextBox, die eine Funktion ausführt, und nicht einen Hyperlink

wir haben eine Datenbank Aufträge enthalten, und manchmal müssen wir mit Wildcards suchen, so können wir für dh Aufträge von Unternehmen suchen, die foo enthält. Dieser Teil ist OK, ich habe eine Funktion, die mir dann die letzten 50 Bestellungen gibt, wo CompanyName foo enthält, sie in einer TextBox einschließlich Bestellnummer, CompanyName und einigen anderen Informationen ausgibt.

So ist die Ausgabe 50 Zeilen in meinem TextBox, jede Zeile mit den Informationen, die ich brauche. Jetzt doppelklicken wir auf die Bestellnummer und kopieren/fügen sie in eine andere TextBox ein und haben eine Schaltfläche, die die Datenbank mit einem anderen Aufruf aufruft, der alle Informationen über die spezifische Bestellung enthält.

Natürlich wäre es viel klüger, wenn wir nur auf die Bestellnummer klicken konnte, und die gleichen Informationen ohne lästiges Copy/Paste erhalten! Ich habe tief und weit gesucht, aber alles, was ich finden kann, ist über Links, die einen Browser öffnen, aber nichts, das ein Ereignis/eine Funktion auslöst.

Hat jemand jetzt von einer Methode zu erwerben, was ich suche?

+1

Müssen Sie den Text in der Textbox bearbeiten? TextBox scheint nicht das geeignete Steuerelement zum Anzeigen dieser Informationen. Warum wählen Sie kein DataGridView oder gar eine ListBox? – Steve

+1

Während es besser ist, ein geeignetes Steuerelement zu verwenden, als in den Kommentaren oder Antworten angeboten, aber wenn Sie es mit einer 'TextBox 'tun möchten, werfen Sie einen Blick auf diesen Beitrag: [Wie man bestimmten Textwert aus einer Textbox basierend auf der Maus erhalten Position] (http://stackoverflow.com/questions/13070841/how-to-get-specific-text-value-from-a-textbox-based-upon-the-muse-position) –

Antwort

0

habe ich eine ähnliche Wirkung durch einen Blick auf die Ergebnisse zu schaffen und verwendet, um eine Taste, um die Auftragsnummer anzuzeigen. Auf diese Weise wird die Schaltfläche für die Anzahl der Ergebnisse repliziert, hat jedoch weiterhin die Funktionalität, neue Ereignisse zu erstellen, und verfügt über die Hover-Funktion, um dem Benutzer mitzuteilen, dass er aktiv ist.

+0

Danke für das Zeigen der offensichtlichen Da dies "nur" für den internen Gebrauch ist, stört es mich nicht 50 Tasten auf der gleichen Seite :) –

2

Es klingt wie eine TextBox ist nicht die beste Steuerung dafür. So etwas wie ein ListBox wäre besser, da es Veranstaltungen wie Click, DoubleClick hat, und SelectedValueChanged, die verwendet werden können, um den nächsten Methodenaufruf auszuführen.

Wenn Sie aus irgendeinem Grund eine TextBox verwenden müssen, würde ich stattdessen eine RichTextBox empfehlen, da es viel mehr Funktionalität bietet, die dafür geeignet wäre.

Verwandte Themen