Zum Hauptinhalt springen

Button hinzufügen

Wenn Sie einem Generic Dialog einen eigenen Knopf hinfügen wollen gehen Sie bitte wie folgt vor.

Öffnen Sie den Formular Designer des Dialoges und fügen Sie dem Dialog einen "ScriptButton" hinzu und merken Sie sich dessen Name z.B. "$SCRIPTBUTTON1".

Setzen Sie die Knopf Beschriftung und optional ein Bild.

Erzeugen Sie ein Dialog Plugin wie im vorigen Kapitel gezeigt.

Fügen Sie wenn nicht bereits vorhanden dem Dialog Plugin eine Überladung "Register" hinzu.

Beispiel:

public override void Register()
{

}

Schreiben Sie eine Funktion die ihr Knopf beim klicken aufrufen soll.

Beispiel:

private void Button1_Click()
{
//Ihr Code
}

In der Funktion Register Registrieren Sie nun den Knopf und weisen ihn Ihrer Funktion zu.

Beispiel:


public override void Register()
{
this.RegisterScriptButton("$SCRIPTBUTTON1", this.Button1_Click);
}

private void Button1_Click()
{
//Ihr Code
}

Der folgende Code prüft ob der Anwender einen Scriptknopf mit dem Namen "$SCRIPTBUTTON1" angelegt hat und gibt wenn nicht eine Warnung im Log aus.

Beachten Sie das this.RegisterScriptButton keine Fehler wirft wenn der Scriptknopf im Form Designer fehlt. Dies ist Absicht. Damit kann der Endanwender selbst enscheiden ob der den Knopf benutzen will oder nicht.

public override void Register()
{
if (this.Form.Controls["$SCRIPTBUTTON1"] == null)
{
XLogger.Info("Script Button '$SCRIPTBUTTON1' nicht gefunden");
}
}

Sie können mit den folgenden Befehlen steuern ob ein Knopf gesperrt (disabled) oder entsperrt ist (enable)

 this.DisableScriptButton("$SCRIPTBUTTON1");
this.EnableScriptButton("$SCRIPTBUTTON1");

Das folgende Beispiel zeigt wie sie im Dialog Plugin beim drücken des Script Knopes Werte des aktuellen Datensatzes lesen und anzeigen können.

private void Button1_Click()
{
string name = this.GetStringEx("NAME");
int alter = this.GetDoubleEx("ALTER");

string text = "Der Baums ist " + alter + " Jahre alt und heist " + name;
XMsgBox.ShowDialog(text);
}