IValueProvider.SetValue(String) Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Задает значение элемента управления.
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.
Элементы управления, такие как ListItem и TreeItem , должны реализовывать IValueProvider , если значение любого из элементов доступно для редактирования, независимо от текущего режима редактирования элемента управления. Родительский элемент управления также должен реализовывать , IValueProvider если дочерние элементы доступны для редактирования.
Пример редактируемого элемента списка