ToolStripItem.GiveFeedback Olay

Tanım

Sürükleme işlemi sırasında oluşur.

public:
 event System::Windows::Forms::GiveFeedbackEventHandler ^ GiveFeedback;
[System.ComponentModel.Browsable(false)]
public event System.Windows.Forms.GiveFeedbackEventHandler GiveFeedback;
[System.ComponentModel.Browsable(false)]
public event System.Windows.Forms.GiveFeedbackEventHandler? GiveFeedback;
[<System.ComponentModel.Browsable(false)>]
member this.GiveFeedback : System.Windows.Forms.GiveFeedbackEventHandler 
Public Custom Event GiveFeedback As GiveFeedbackEventHandler 

Olay Türü

Öznitelikler

Örnekler

Aşağıdaki kod örneğinde bu üyenin kullanımı gösterilmektedir. Örnekte, olay işleyicisi olayın oluşumunu GiveFeedback raporlar. Bu rapor, olayın ne zaman gerçekleştiğini öğrenmenize yardımcı olur ve hata ayıklamada size yardımcı olabilir. Birden çok olayı veya sık gerçekleşen olayları raporlamak için, iletisini ile Console.WriteLine değiştirmeyi MessageBox.Show veya iletiyi çok satırlı TextBoxbir iletiye eklemeyi göz önünde bulundurun.

Örnek kodu çalıştırmak için, veya gibi ' den ToolStripItemdevralan bir türün örneğini içeren bir ToolStripButtonToolStripMenuItemprojeye yapıştırın. Ardından örneği ToolStripItem1 adlandırın ve olay işleyicisinin olayla ilişkilendirildiğinden GiveFeedback emin olun.

private void ToolStripItem1_GiveFeedback(Object sender, GiveFeedbackEventArgs e) {

System.Text.StringBuilder messageBoxCS = new System.Text.StringBuilder();
messageBoxCS.AppendFormat("{0} = {1}", "Effect", e.Effect );
messageBoxCS.AppendLine();
messageBoxCS.AppendFormat("{0} = {1}", "UseDefaultCursors", e.UseDefaultCursors );
messageBoxCS.AppendLine();
MessageBox.Show(messageBoxCS.ToString(), "GiveFeedback Event" );
}
Private Sub ToolStripItem1_GiveFeedback(sender as Object, e as GiveFeedbackEventArgs) _ 
     Handles ToolStripItem1.GiveFeedback

    Dim messageBoxVB as New System.Text.StringBuilder()
    messageBoxVB.AppendFormat("{0} = {1}", "Effect", e.Effect)
    messageBoxVB.AppendLine()
    messageBoxVB.AppendFormat("{0} = {1}", "UseDefaultCursors", e.UseDefaultCursors)
    messageBoxVB.AppendLine()
    MessageBox.Show(messageBoxVB.ToString(),"GiveFeedback Event")

End Sub

Açıklamalar

Olay GiveFeedback , sürükle ve bırak işlemi başlatıldığında tetikleniyor. Olay, GiveFeedback sürükle ve bırak işlemi sırasında kullanıcıya görsel geri bildirim sağlamak için sürükleme olayının kaynağının fare işaretçisinin görünümünü değiştirmesine olanak tanır.

Aşağıdaki açıklamalar, sürükle ve bırak işlemleriyle ilgili olayların nasıl ve ne zaman tetiklendirildiği açıklanmaktadır.

DoDragDrop yöntemi, geçerli imleç konumunun altındaki öğeyi belirler. Ardından öğenin geçerli bir bırakma hedefi olup olmadığını denetler.

Öğe geçerli bir bırakma hedefiyse, GiveFeedback olay sürükle ve bırak efekti belirtilen şekilde oluşturulur. Sürükle ve bırak efektlerinin listesi için numaralandırmaya DragDropEffects bakın.

Fare imleci konumu, klavye durumu ve fare düğmesi durumundaki değişiklikler aşağıdaki şekilde izlenir:

  • Kullanıcı bir pencereden dışarı taşınırsa, DragLeave olay tetikler.

  • Fare başka bir öğe girerse, DragEnter bu denetimin öğesi oluşturulur.

  • Fare hareket eder ancak aynı öğe içinde kalırsa, DragOver olay tetikler.

Klavye veya fare düğmesi durumunda bir değişiklik olursa, QueryContinueDrag olay oluşturulur ve sürüklemeye devam edileceğini, verileri bırakılıp bırakılmayacağını veya olayın QueryContinueDragEventArgsözelliğinin Action değerine göre işlemi iptal edip etmeyeceğini belirler.

değeri DragAction iseContinueDragOver, işlemi devam etmek için olay oluşturulur ve uygun görsel geri bildirimin ayarlanabilmesi GiveFeedback için olay yeni efektle oluşturulur. Geçerli bırakma efektlerinin listesi için numaralandırmaya DragDropEffects bakın.

DragOver ve GiveFeedback olayları eşlenir, böylece fare bırakma hedefi boyunca ilerledikçe kullanıcıya farenin konumuyla ilgili en güncel geri bildirim şu şekilde verilir:

  • değeri DragAction ise Drop, bırakma efekti değeri kaynağa döndürülür, böylece kaynak uygulama kaynak verilerde uygun işlemi gerçekleştirebilir; örneğin, işlem bir taşıma işlemiyse verileri kesin.

  • değeri DragAction iseCancelDragLeave, olay oluşturulur.

Şunlara uygulanır