2017-01-04 2 views
0

ich in der Lage zu sperren bin die aktuelle Postsendung des aktiven Inspektoren zu lesen, ich bin in der Lage Werte für diese Felder programmatisch zuweisen. Aber was ich tun muss ID deaktivieren oder sperren Sie die Felder von Benutzereingaben.Wie deaktivieren oder An/Betreff fielf neuer Mail-Fenster mit Outlook AddIn 2010

Wenn jemand eine Idee dazu haben, lass es mich wissen. Vielen Dank.

+0

Ich habe Schwierigkeiten zu sehen, wie JQuery oder MVC auf diese anwendbar sind? – stuartd

Antwort

-1

Ich glaube nicht, dass es eine Möglichkeit gibt, den Benutzer daran zu hindern, dieses Feld direkt zu bearbeiten - möglicherweise, wenn Sie Formularbereiche verwenden und das Betrefffeld direkt überschreiben können (indem Sie stattdessen einen Formularbereich ersetzen) als ein angrenzendes).

Das Beste, was Sie tun können, ist, den unveränderlichen Wert für das Subjekt beim Start zu speichern, an das Ereignis zu binden, das ausgelöst wird, wenn der Benutzer dieses Feld ändert, und es wieder auf den unveränderlichen Wert zurückzusetzen.

Die Property Eigenschaft des MailItem Objekts https://technet.microsoft.com/en-us/library/ff866739 ist, was Sie hören müssen.

Beispiel:

// within your startup method 
this._MailItem.PropertyChange += MailItem_PropertyChange; 
this.mySubject = "Don't change me!"; 

function MailItem_PropertyChange(string Name) 
{ 
    if (Name.Equals("Subject")) // or whatever 
    { 
     // do something here like this.Subject = this.mySubject; 
     // and maybe alert the user the field can't be changed 
    } 
} 
+0

Das Ereignis wird nicht ausgelöst, bis Sie versuchen, das Element zu speichern oder zu einem anderen Feld wechseln im Inspektorfenster. Dies ist ein bekanntes Problem. –

+0

Danke John, aber ich möchte bestimmte Felder deaktivieren, wenn das neue Mail-Fenster geöffnet wird. – TinkerBelly

0

ich nur das Finden des richtigen HWND denken kann und es mit EnableWWindow Windows-API-Funktion zu deaktivieren.

Verwandte Themen