TransformPattern.TransformPatternInformation.CanResize プロパティ
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
UI オートメーション要素のサイズを変更できるかどうかを指定する値を取得します。
public:
property bool CanResize { bool get(); };
public bool CanResize { get; }
member this.CanResize : bool
Public ReadOnly Property CanResize As Boolean
プロパティ値
要素のサイズを変更できる場合は true
。変更できない場合は false
。
例
次の例では、コントロール パターンを 1 つからAutomationElement取得し、TransformPatternその後のサイズ変更に使用しますAutomationElement。
///--------------------------------------------------------------------
/// <summary>
/// Obtains a TransformPattern control pattern from
/// an automation element.
/// </summary>
/// <param name="targetControl">
/// The automation element of interest.
/// </param>
/// <returns>
/// A TransformPattern object.
/// </returns>
///--------------------------------------------------------------------
private TransformPattern GetTransformPattern(
AutomationElement targetControl)
{
TransformPattern transformPattern = null;
try
{
transformPattern =
targetControl.GetCurrentPattern(TransformPattern.Pattern)
as TransformPattern;
}
catch (InvalidOperationException)
{
// object doesn't support the TransformPattern control pattern
return null;
}
return transformPattern;
}
'''--------------------------------------------------------------------
''' <summary>
''' Obtains a TransformPattern control pattern from
''' an automation element.
''' </summary>
''' <param name="targetControl">
''' The automation element of interest.
''' </param>
''' <returns>
''' A TransformPattern object.
''' </returns>
'''--------------------------------------------------------------------
Private Function GetTransformPattern( _
ByVal targetControl As AutomationElement) As TransformPattern
Dim transformPattern As TransformPattern = Nothing
Try
transformPattern = DirectCast( _
targetControl.GetCurrentPattern(transformPattern.Pattern), _
TransformPattern)
Catch exc As InvalidOperationException
' object doesn't support the TransformPattern control pattern
Return Nothing
End Try
Return transformPattern
End Function 'GetTransformPattern
///--------------------------------------------------------------------
/// <summary>
/// Calls the TransformPattern.Resize() method for an associated
/// automation element.
/// </summary>
/// <param name="transformPattern">
/// The TransformPattern control pattern obtained from
/// an automation element.
/// </param>
/// <param name="width">
/// The requested width of the automation element.
/// </param>
/// <param name="height">
/// The requested height of the automation element.
/// </param>
///--------------------------------------------------------------------
private void ResizeElement(
TransformPattern transformPattern, double width, double height)
{
try
{
if (transformPattern.Current.CanResize)
{
transformPattern.Resize(width, height);
}
}
catch (InvalidOperationException)
{
// object is not able to perform the requested action
return;
}
}
'''--------------------------------------------------------------------
''' <summary>
''' Calls the TransformPattern.Resize() method for an associated
''' automation element.
''' </summary>
''' <param name="transformPattern">
''' The TransformPattern control pattern obtained from
''' an automation element.
''' </param>
''' <param name="width">
''' The requested width of the automation element.
''' </param>
''' <param name="height">
''' The requested height of the automation element.
''' </param>
'''--------------------------------------------------------------------
Private Sub ResizeElement( _
ByVal transformPattern As TransformPattern, _
ByVal width As Double, ByVal height As Double)
Try
If transformPattern.Current.CanResize Then
transformPattern.Resize(width, height)
End If
Catch
' object is not able to perform the requested action
Return
End Try
End Sub
注釈
オブジェクトを移動、サイズ変更、または回転することはできません。これにより、結果として得られる画面の位置がコンテナーの座標の外にあり、キーボードやマウスにアクセスできなくなります。 たとえば、最上位のウィンドウが画面から完全に移動された場合や、子オブジェクトがコンテナーのビューポートの境界の外に移動された場合などです。 このような場合、オブジェクトは要求された画面座標の近くに可能な限り配置され、上部または左の座標はコンテナーの境界内にオーバーライドされます。