MenuItem.MeasureItem Событие
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Происходит, когда меню требуются сведения о размере элемента меню перед его отрисовкой.
public:
event System::Windows::Forms::MeasureItemEventHandler ^ MeasureItem;
public event System.Windows.Forms.MeasureItemEventHandler MeasureItem;
member this.MeasureItem : System.Windows.Forms.MeasureItemEventHandler
Public Custom Event MeasureItem As MeasureItemEventHandler
Тип события
Примеры
В следующем примере кода показано использование этого элемента. В этом примере обработчик событий сообщает о возникновении MeasureItem события. Этот отчет поможет вам узнать, когда происходит событие, и может помочь в отладке.
Чтобы выполнить пример кода, вставьте его в проект, содержащий экземпляр типа MenuItem с именем MenuItem1
. Затем убедитесь, что обработчик событий связан с событием MeasureItem .
private void MenuItem1_MeasureItem(Object sender, MeasureItemEventArgs e) {
System.Text.StringBuilder messageBoxCS = new System.Text.StringBuilder();
messageBoxCS.AppendFormat("{0} = {1}", "Graphics", e.Graphics );
messageBoxCS.AppendLine();
messageBoxCS.AppendFormat("{0} = {1}", "Index", e.Index );
messageBoxCS.AppendLine();
messageBoxCS.AppendFormat("{0} = {1}", "ItemHeight", e.ItemHeight );
messageBoxCS.AppendLine();
messageBoxCS.AppendFormat("{0} = {1}", "ItemWidth", e.ItemWidth );
messageBoxCS.AppendLine();
MessageBox.Show(messageBoxCS.ToString(), "MeasureItem Event" );
}
Private Sub MenuItem1_MeasureItem(sender as Object, e as MeasureItemEventArgs) _
Handles MenuItem1.MeasureItem
Dim messageBoxVB as New System.Text.StringBuilder()
messageBoxVB.AppendFormat("{0} = {1}", "Graphics", e.Graphics)
messageBoxVB.AppendLine()
messageBoxVB.AppendFormat("{0} = {1}", "Index", e.Index)
messageBoxVB.AppendLine()
messageBoxVB.AppendFormat("{0} = {1}", "ItemHeight", e.ItemHeight)
messageBoxVB.AppendLine()
messageBoxVB.AppendFormat("{0} = {1}", "ItemWidth", e.ItemWidth)
messageBoxVB.AppendLine()
MessageBox.Show(messageBoxVB.ToString(),"MeasureItem Event")
End Sub
Комментарии
Чтобы вызвать это событие, необходимо, чтобы OwnerDraw свойство элемента меню было задано как true
. Это событие возникает перед отображением меню, нарисованного владельцем, чтобы можно было указать размер отрисовки элемента меню. Дополнительные сведения об обработке событий см. в разделе Обработка и вызов событий.