ToolStripItem.GiveFeedback Událost

Definice

Vyvolá se při operaci přetažení.

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 

Event Type

Atributy

Příklady

Následující příklad kódu ukazuje použití tohoto člena. V příkladu obslužná rutina události hlásí výskyt GiveFeedback události. Tato sestava vám pomůže zjistit, kdy k události dojde, a může vám pomoct s laděním. Pokud chcete hlásit více událostí nebo událostí, ke kterým dochází často, zvažte nahrazení MessageBox.ShowConsole.WriteLine nebo připojení zprávy k víceřádkovému TextBoxobjektu .

Pokud chcete spustit ukázkový kód, vložte ho do projektu, který obsahuje instanci typu, která dědí z ToolStripItem, například nebo ToolStripButtonToolStripMenuItem. Potom pojmenujte instanci ToolStripItem1 a ujistěte se, že obslužná rutina události je přidružená k GiveFeedback události.

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

Poznámky

Událost GiveFeedback je vyvolána při spuštění operace přetažení. Událost GiveFeedback umožňuje zdroji události přetažení upravit vzhled ukazatele myši, aby se během operace přetažení poskytla vizuální zpětná vazba uživatele.

Následující poznámky popisují, jak a kdy jsou vyvolány události související s operacemi přetažení.

Metoda DoDragDrop určuje položku pod aktuálním umístěním kurzoru. Pak zkontroluje, jestli je položka platným cílem pro vyřazení.

Pokud je položka platným cílem přetažení, GiveFeedback událost se vyvolá se zadaným efektem přetažení. Seznam efektů přetažení najdete ve výčtu DragDropEffects .

Změny v umístění kurzoru myši, stavu klávesnice a stavu tlačítka myši se sledují následujícím způsobem:

  • Pokud se uživatel přesune mimo okno, vyvolá se DragLeave událost.

  • Pokud myš zadá jinou položku, DragEnter je vyvolána hodnota pro tento ovládací prvek.

  • Pokud se myš přesune, ale zůstane ve stejné položce, vyvolá se DragOver událost.

Pokud dojde ke změně stavu klávesnice nebo tlačítka myši, QueryContinueDrag vyvolá se událost a určí, jestli chcete pokračovat v přetažení, odstranit data nebo zrušit operaci na základě hodnoty Action vlastnosti události QueryContinueDragEventArgs.

Pokud hodnota je DragActionContinue, DragOver událost se vyvolá, aby pokračovala v operaci, a GiveFeedback událost se vyvolá s novým efektem, aby bylo možné nastavit odpovídající vizuální zpětnou vazbu. Seznam platných efektů přetažení najdete ve výčtu DragDropEffects .

Události DragOver a GiveFeedback se spárují tak, že při pohybu myši přes cíl přetažení dostane uživatel nejaktuálnější zpětnou vazbu o pozici myši, a to následujícím způsobem:

  • Pokud je Drophodnota DragAction je , vrátí se do zdroje hodnota efektu poklesu, takže zdrojová aplikace může se zdrojovými daty provést příslušnou operaci, například vyjmout data, pokud operace byla přesunem.

  • Pokud je Cancelhodnota parametru DragAction , vyvolá se DragLeave událost.

Platí pro