Bagikan melalui


IValueProvider.SetValue(String) Metode

Definisi

Mengatur nilai kontrol.

public:
 void SetValue(System::String ^ value);
public void SetValue (string value);
abstract member SetValue : string -> unit
Public Sub SetValue (value As String)

Parameter

value
String

Nilai yang akan ditetapkan. Penyedia bertanggung jawab untuk mengonversi nilai ke jenis data yang sesuai.

Pengecualian

Jika informasi khusus lokal diteruskan ke kontrol dalam format yang salah seperti tanggal yang salah diformat.

Jika nilai baru tidak dapat dikonversi dari string ke format yang dikenali kontrol.

Ketika upaya dilakukan untuk memanipulasi kontrol yang tidak diaktifkan.

Contoh

Contoh kode berikut menunjukkan kontrol kustom yang memungkinkan nilainya diatur ke string dengan panjang terbatas.

/// <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

Keterangan

Kontrol pengeditan baris tunggal mendukung akses terprogram ke kontennya dengan menerapkan IValueProvider. Namun, kontrol edit multibaris tidak menerapkan IValueProvider; sebaliknya kontrol tersebut menyediakan akses ke konten dengan menerapkan ITextProvider.

Kontrol seperti ListItem dan TreeItem harus diterapkan IValueProvider jika nilai salah satu item dapat diedit, terlepas dari mode edit kontrol saat ini. Kontrol induk juga harus diimplementasikan IValueProvider jika item anak dapat diedit.

Item daftar yang dapat diedit.
Contoh Item Daftar yang Dapat Diedit

Berlaku untuk