FrameworkElement.Cursor プロパティ
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
この要素上にマウス ポインターが置かれたときに表示されるカーソルを取得または設定します。
public:
property System::Windows::Input::Cursor ^ Cursor { System::Windows::Input::Cursor ^ get(); void set(System::Windows::Input::Cursor ^ value); };
public System.Windows.Input.Cursor Cursor { get; set; }
member this.Cursor : System.Windows.Input.Cursor with get, set
Public Property Cursor As Cursor
プロパティ値
表示対象のカーソル。 既定値はこの依存関係プロパティごとに null
として定義されます。 ただし、実行時における実用的な既定値は、さまざまな要因から取得されます。
例
次の例は、カーソル グラフィックを意図的に設定する方法を示しています。
private void CursorTypeChanged(object sender, SelectionChangedEventArgs e)
{
ComboBox source = e.Source as ComboBox;
if (source != null)
{
ComboBoxItem selectedCursor = source.SelectedItem as ComboBoxItem;
// Changing the cursor of the Border control
// by setting the Cursor property
switch (selectedCursor.Content.ToString())
{
case "AppStarting":
DisplayArea.Cursor = Cursors.AppStarting;
break;
case "ArrowCD":
DisplayArea.Cursor = Cursors.ArrowCD;
break;
case "Arrow":
DisplayArea.Cursor = Cursors.Arrow;
break;
case "Cross":
DisplayArea.Cursor = Cursors.Cross;
break;
case "HandCursor":
DisplayArea.Cursor = Cursors.Hand;
break;
case "Help":
DisplayArea.Cursor = Cursors.Help;
break;
case "IBeam":
DisplayArea.Cursor = Cursors.IBeam;
break;
case "No":
DisplayArea.Cursor = Cursors.No;
break;
case "None":
DisplayArea.Cursor = Cursors.None;
break;
case "Pen":
DisplayArea.Cursor = Cursors.Pen;
break;
case "ScrollSE":
DisplayArea.Cursor = Cursors.ScrollSE;
break;
case "ScrollWE":
DisplayArea.Cursor = Cursors.ScrollWE;
break;
case "SizeAll":
DisplayArea.Cursor = Cursors.SizeAll;
break;
case "SizeNESW":
DisplayArea.Cursor = Cursors.SizeNESW;
break;
case "SizeNS":
DisplayArea.Cursor = Cursors.SizeNS;
break;
case "SizeNWSE":
DisplayArea.Cursor = Cursors.SizeNWSE;
break;
case "SizeWE":
DisplayArea.Cursor = Cursors.SizeWE;
break;
case "UpArrow":
DisplayArea.Cursor = Cursors.UpArrow;
break;
case "WaitCursor":
DisplayArea.Cursor = Cursors.Wait;
break;
case "Custom":
DisplayArea.Cursor = CustomCursor;
break;
default:
break;
}
// If the cursor scope is set to the entire application
// Use OverrideCursor to force the cursor for all elements
if (cursorScopeElementOnly == false)
{
Mouse.OverrideCursor = DisplayArea.Cursor;
}
}
}
' When the Radiobox changes, a new cursor type is set
Private Sub CursorTypeChanged(ByVal sender As Object, ByVal e As SelectionChangedEventArgs)
Dim item As String = CType(e.Source, ComboBox).SelectedItem.Content.ToString()
Select Case item
Case "AppStarting"
DisplayArea.Cursor = Cursors.AppStarting
Case "ArrowCD"
DisplayArea.Cursor = Cursors.ArrowCD
Case "Arrow"
DisplayArea.Cursor = Cursors.Arrow
Case "Cross"
DisplayArea.Cursor = Cursors.Cross
Case "HandCursor"
DisplayArea.Cursor = Cursors.Hand
Case "Help"
DisplayArea.Cursor = Cursors.Help
Case "IBeam"
DisplayArea.Cursor = Cursors.IBeam
Case "No"
DisplayArea.Cursor = Cursors.No
Case "None"
DisplayArea.Cursor = Cursors.None
Case "Pen"
DisplayArea.Cursor = Cursors.Pen
Case "ScrollSE"
DisplayArea.Cursor = Cursors.ScrollSE
Case "ScrollWE"
DisplayArea.Cursor = Cursors.ScrollWE
Case "SizeAll"
DisplayArea.Cursor = Cursors.SizeAll
Case "SizeNESW"
DisplayArea.Cursor = Cursors.SizeNESW
Case "SizeNS"
DisplayArea.Cursor = Cursors.SizeNS
Case "SizeNWSE"
DisplayArea.Cursor = Cursors.SizeNWSE
Case "SizeWE"
DisplayArea.Cursor = Cursors.SizeWE
Case "UpArrow"
DisplayArea.Cursor = Cursors.UpArrow
Case "WaitCursor"
DisplayArea.Cursor = Cursors.Wait
Case "Custom"
DisplayArea.Cursor = CustomCursor
End Select
' if the cursor scope is set to the entire application
' use OverrideCursor to force the cursor for all elements
If (cursorScopeElementOnly = False) Then
Mouse.OverrideCursor = DisplayArea.Cursor
End If
End Sub
注釈
XAML でこのプロパティを設定すると、XAML プロセッサは、 クラスの型変換 Cursor に依存して文字列を評価します。 指定された文字列は値に評価されます CursorType 。 詳細については、Cursor を参照してください。
このプロパティによって確立されたカーソルがこの要素の上にマウス ポインターを置いたときに表示されるかどうかも、 プロパティの ForceCursor 値に依存します。 また、アクティブなドラッグ、マウス キャプチャ、コントロール内のテキスト編集モードなどのイベント関連の考慮事項も、このプロパティで指定した値よりも優先度の高いカーソルに影響します。
このプロパティを最終的な既定値に設定する動作を元に戻すには、もう一度 に null
設定します。
既定値は null
実際には、実際のカーソル値の決定はここで延期され、他の場所から取得する必要があることを意味します。 ソースからのプログラム値なしで表示される場合、Windows Presentation Foundation (WPF) アプリケーション上に視覚的に表示される既定のカーソルは矢印になります。 ただし、一時的なカーソルの変更は、渡されるときに要素の値に設定 Cursor されません。 プロパティは Cursor 、コードやスタイルを使用して実際に設定された場合にのみ、null 以外の値を報告します。 WPF アプリケーション上でマウスを移動するたびに、イベントが QueryCursor 発生します。 イベント バブルとルートに沿った要素には、イベントを処理し、このイベントの引数を使用してカーソルの値を設定する機会があります。 これは、ほとんどの場合、視覚的に見えるカーソルを生成するメカニズムです。 ハンドラーがQueryCursorカーソルの結果を返す場合、イベントが処理され、引数の値が変更されたという事実は、 が設定されていない限りForceCursor、任意のレベルのプロパティのCursor値よりも優先されます。
カスタム カーソルを作成していない場合は、通常、このプロパティを クラスの静的プロパティ値に Cursors 設定します。 コードでの設定 Cursor には、次のいずれかが必要です。
コンストラクターを Cursor 呼び出してインスタンスを Cursor 取得します。 コンストラクターの両方の Cursor シグネチャは、カスタム カーソルのオブジェクトを作成することを想定して Cursor 、ストリームまたはファイルを使用します。
クラスとそのメソッドをCursorConverter使用して、 または に評価CursorTypeできる文字列でCursorTypeカーソルを指定し、戻り値を にCursorキャストConvertFromします。
を Cursor カスタム値に設定することは、部分信頼では有効になっていません。 カスタム カーソルの詳細については、「 入力の概要」を参照してください。
依存プロパティ情報
識別子フィールド | CursorProperty |
に設定されたメタデータ プロパティ true |
なし |
適用対象
こちらもご覧ください
.NET