IValueProvider.SetValue(String) 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
컨트롤의 값을 설정합니다.
public:
void SetValue(System::String ^ value);
public void SetValue (string value);
abstract member SetValue : string -> unit
Public Sub SetValue (value As String)
매개 변수
- value
- String
설정할 값입니다. 공급자는 적절한 데이터 형식으로 값을 변환합니다.
예외
로캘 관련 정보가 잘못된 형식(예: 올바르지 않은 형식의 날짜)으로 컨트롤에 전달되는 경우.
새 값을 문자열에서 컨트롤이 인식하는 형식으로 변환할 수 없는 경우.
활성화되지 않은 컨트롤을 조작하려고 시도하는 경우.
예제
다음 예제 코드에서는 해당 값을 제한된 길이의 문자열로 설정할 수 있는 사용자 지정 컨트롤을 보여 줍니다.
/// <summary>
/// Sets the value of the control.
/// </summary>
/// <param name="value">
/// The new value.
/// </param>
void IValueProvider.SetValue(string value)
{
if (((IValueProvider)this).IsReadOnly)
throw new InvalidOperationException(
"Operation cannot be performed.");
// Arbitrary string length limit.
if (value.Length > 5)
throw new ArgumentOutOfRangeException(
"String is greater than five characters in length.");
controlValue = value;
}
''' <summary>
''' Sets the value of the control.
''' </summary>
''' <param name="value">
''' The new value.
''' </param>
Private Sub SetValue(ByVal value As String) Implements IValueProvider.SetValue
If (CType(Me, IValueProvider)).IsReadOnly Then
Throw New InvalidOperationException("Operation cannot be performed.")
End If
' Arbitrary string length limit.
If value.Length > 5 Then
Throw New ArgumentOutOfRangeException("String is greater than five characters in length.")
End If
controlValue = value
End Sub
설명
단일 줄 편집 컨트롤은 IValueProvider를 구현하여 해당 내용에 대한 프로그래밍 방식 액세스를 제공합니다. 하지만 여러 줄 편집 컨트롤은 IValueProvider를 구현하지 않습니다. 대신, ITextProvider를 구현하여 내용에 대한 액세스를 제공합니다.
및 TreeItem 와 같은 ListItem 컨트롤은 컨트롤의 현재 편집 모드에 관계없이 항목의 값을 편집할 수 있는지를 구현 IValueProvider 해야 합니다. 자식 항목을 편집할 수 있는 경우에도 부모 컨트롤을 구현 IValueProvider 해야 합니다.
편집 가능한 목록 항목의 예
적용 대상
.NET