Frage

Ich habe die MSDN ausspioniert und nicht eine Eigenschaft / Methode für TextBox sehen, dass Sie den Standardtext Wert erhalten können, die auf einem Feld festgelegt wurde; Ich möchte in der Lage, den aktuellen txtMyTextBox.Text auf den Standardwert (wie dieser Pseudo-Code zeigt) zu vergleichen:

var myValue = (String.Compare(txtMyTextBox.Text, txtMyTextBox.DefaultText) ? "" : txtMyTextBox.Text)

Ist das etwas, was in der ASP.NET-Steuerung vorhanden ist? Oder frage ich zu viel? :)

Danke für jede Hilfe (wie immer)!

Pete

War es hilfreich?

Lösung

Es gibt keine in Art und Weise gebaut, um den Standardwert einer Textbox während Postbacks des Abrufens.

Eine Option wäre Viewstate verwenden Sie den Wert während der ersten Pageload zu speichern und von dort während der Postbacks Abrufen, um den Vergleich zu machen.

Andere Tipps

Mit dem Defaulttext meinen Sie den ursprünglichen Text vor der Bearbeitung?

Vielleicht erklären diese in einer konstanten / Feld / etc irgendwo, und es setzt programmatisch statt in der Markup - das heißt, in der ersten Last, txtMyTextBox.Text = defaultText; - dann können Sie später einfach wieder vergleichen, um defaultText Änderungen zu verfolgen

.

Es gibt keine „Defaulttext“ Eigenschaft auf einer Textbox (oder jede andere Steuerung). Sie haben wahrscheinlich den Standard durch einen konstanten String definiert, so dass nur die Eigenschaft Text auf dieses konstante String vergleichen.

Die einzige Eigenschaft, die Sie überprüfen können, ist die Eigenschaft Text. Wenn Sie einen Originalwert vergleichen, müssen dann würden Sie am besten sein, wie vielleicht zu speichern, dass ein verstecktes Feld oder Session-Variablen. Anschließend können Sie dies überprüfen, gegen irgendetwas in der TextBox.Text Eigenschaft.

Setzen Sie den ursprünglichen Wert in einem versteckten Feld oder in Ansichtszustand.

Die TextBox-Klasse unterstützt nur eine .Text Eigenschaft, so dass Ihr „default“ Wert wird irgendwo von ersten im Voraus gespeichert wird, machen die Seite, so dass Sie die .text Eigenschaft Textbox überprüfen, wenn die Seite zurück gebucht wird. Dieser „default“ Wert konnte in der Viewstate auf der Seite in einem Cookie (wenn klein genug), gespeichert werden, in einem versteckten Formularfeld auf der Seite oder sogar in der Anwendung oder den Sitzungsstatus.

TextBox keinen Defaulttext Eigenschaft, also bin ich verwirrt. Wie setzen Sie einen Textwert default? Wenn Sie nur setzen sie im Code d.

<asp:TextBox ...>Default Value</asp:TextBox>

Dann wird es der Wert der .Text Eigenschaft sein.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top