ColorDialog.SolidColorOnly 属性

获取或设置一个值,该值指示对话框是否限制用户只选择纯色。

**命名空间:**System.Windows.Forms
**程序集:**System.Windows.Forms(在 system.windows.forms.dll 中)

语法

声明
Public Overridable Property SolidColorOnly As Boolean
用法
Dim instance As ColorDialog
Dim value As Boolean

value = instance.SolidColorOnly

instance.SolidColorOnly = value
public virtual bool SolidColorOnly { get; set; }
public:
virtual property bool SolidColorOnly {
    bool get ();
    void set (bool value);
}
/** @property */
public boolean get_SolidColorOnly ()

/** @property */
public void set_SolidColorOnly (boolean value)
public function get SolidColorOnly () : boolean

public function set SolidColorOnly (value : boolean)

属性值

如果用户只能选择纯色,则为 true;否则为 false。默认值为 false

备注

该属性适用于有 256 种颜色或更少颜色的系统。在这些类型的系统上,某些颜色是其他颜色的组合。

示例

下面的代码示例演示如何初始化设置 AnyColorAllowFullOpen 属性的 ColorDialog。该 ColorDialog 不允许用户设置自定义颜色,但允许显示完整的基本颜色集。将 SolidColorOnly 属性设置为 false 时,它允许显示用系统中的其他颜色与 256 种或更少的颜色组合而成的颜色。该示例还演示如何设置 ShowHelp 属性以及如何处理对话框的 HelpRequest 事件。若要运行该示例,请将下面的代码粘贴到一个窗体中,然后在该窗体的构造函数或 Load 方法中调用 InitializeColorDialog 方法。该示例要求按钮的 Click 事件连接到在该示例中定义的事件处理方法。

' This method initializes ColorDialog1 to allow any colors, 
' and combination colors on systems with 256 colors or less, 
' but will not allow the user to set custom colors.  The
' dialog will contain the help button.
Private Sub InitializeColorDialog()
    Me.ColorDialog1 = New System.Windows.Forms.ColorDialog
    Me.ColorDialog1.AllowFullOpen = False
    Me.ColorDialog1.AnyColor = True
    Me.ColorDialog1.SolidColorOnly = False
    Me.ColorDialog1.ShowHelp = True
End Sub
  

' This method opens the dialog and checks the DialogResult value. 
' If the result is OK, the text box's background color will be changed 
' to the user-selected color.
Private Sub Button1_Click(ByVal sender As System.Object,  _
    ByVal e As System.EventArgs) Handles Button1.Click
    Dim result As DialogResult = ColorDialog1.ShowDialog()
    If (result.Equals(DialogResult.OK)) Then
        TextBox1.BackColor = ColorDialog1.Color
    End If
End Sub
 
  
' This method is called when the HelpRequest event is raised, 
'which occurs when the user clicks the Help button on the ColorDialog object.
Private Sub ColorDialog1_HelpRequest(ByVal sender As Object, _ 
    ByVal e As System.EventArgs) Handles ColorDialog1.HelpRequest

    MessageBox.Show("Please select a color by clicking it." _
    & "This will change the BackColor property of the TextBox.")
End Sub
// This method initializes ColorDialog1 to allow any colors, 
// and combination colors on systems with 256 colors or less, 
// but will not allow the user to set custom colors.  The
// dialog will contain the help button.
private void InitializeColorDialog()
{
    this.ColorDialog1 = new System.Windows.Forms.ColorDialog();
    this.ColorDialog1.AllowFullOpen = false;
    this.ColorDialog1.AnyColor = true;
    this.ColorDialog1.SolidColorOnly = false;
    this.ColorDialog1.ShowHelp = true;
    
    // Associate the event-handling method with
    // the HelpRequest event.
    this.ColorDialog1.HelpRequest 
        += new System.EventHandler(ColorDialog1_HelpRequest);
}


// This method opens the dialog and checks the DialogResult value. 
// If the result is OK, the text box's background color will be changed 
// to the user-selected color.
private void Button1_Click(System.Object sender, System.EventArgs e)
{
    DialogResult result = ColorDialog1.ShowDialog();
    if (result.Equals(DialogResult.OK))
    {
        TextBox1.BackColor = ColorDialog1.Color;
    }
}

// This method is called when the HelpRequest event is raised, 
//which occurs when the user clicks the Help button on the ColorDialog object.
private void ColorDialog1_HelpRequest(object sender, System.EventArgs e)
{

    MessageBox.Show("Please select a color by clicking it. "
       + "This will change the BackColor property of the TextBox.");
}
// This method initializes ColorDialog1 to allow any colors, 
// and combination colors on systems with 256 colors or less, 
// but will not allow the user to set custom colors.  The
// dialog will contain the help button.
void InitializeColorDialog()
{
   this->ColorDialog1 = gcnew System::Windows::Forms::ColorDialog;
   this->ColorDialog1->AllowFullOpen = false;
   this->ColorDialog1->AnyColor = true;
   this->ColorDialog1->SolidColorOnly = false;
   this->ColorDialog1->ShowHelp = true;
   
   // Associate the event-handling method with
   // the HelpRequest event.
   this->ColorDialog1->HelpRequest +=
      gcnew System::EventHandler( this, &Form1::ColorDialog1_HelpRequest );
}

// This method opens the dialog and checks the DialogResult value. 
// If the result is OK, the text box's background color will be changed 
// to the user-selected color.
void Button1_Click( System::Object^ sender, System::EventArgs^ e )
{
   ::DialogResult result = ColorDialog1->ShowDialog();
   if ( result == ::DialogResult::OK )
   {
      TextBox1->BackColor = ColorDialog1->Color;
   }
}

// This method is called when the HelpRequest event is raised, 
//which occurs when the user clicks the Help button on the ColorDialog object.
void ColorDialog1_HelpRequest( Object^ sender, System::EventArgs^ e )
{
   MessageBox::Show( "Please select a color by clicking it. " +
      "This will change the BackColor property of the TextBox." );
}
// This method initializes colorDialog1 to allow any colors, 
// and combination colors on systems with 256 colors or less, 
// but will not allow the user to set custom colors.  The
// dialog will contain the help button.
private void InitializeColorDialog()
{
    this.colorDialog1 = new System.Windows.Forms.ColorDialog();
    this.colorDialog1.set_AllowFullOpen(false);
    this.colorDialog1.set_AnyColor(true);
    this.colorDialog1.set_SolidColorOnly(false);
    this.colorDialog1.set_ShowHelp(true);
    // Associate the event-handling method with
    // the HelpRequest event.
    this.colorDialog1.add_HelpRequest(new System.EventHandler(
        colorDialog1_HelpRequest));
} //InitializeColorDialog

// This method opens the dialog and checks the DialogResult value. 
// If the result is OK, the text box's background color will be changed 
// to the user-selected color.
private void button1_Click(System.Object sender, System.EventArgs e)
{
    DialogResult result = colorDialog1.ShowDialog();
    if (result.Equals(DialogResult.OK)) {
        textBox1.set_BackColor(colorDialog1.get_Color());
    }
} //button1_Click

// This method is called when the HelpRequest event is raised, 
//which occurs when the user clicks the Help button on the ColorDialog object.
private void colorDialog1_HelpRequest(Object sender, System.EventArgs e)
{
    MessageBox.Show("Please select a color by clicking it. " 
        + "This will change the BackColor property of the TextBox.");
} //colorDialog1_HelpRequest

平台

Windows 98、Windows 2000 SP4、Windows CE、Windows Millennium Edition、Windows Mobile for Pocket PC、Windows Mobile for Smartphone、Windows Server 2003、Windows XP Media Center Edition、Windows XP Professional x64 Edition、Windows XP SP2、Windows XP Starter Edition

.NET Framework 并不是对每个平台的所有版本都提供支持。有关受支持版本的列表,请参见系统要求

版本信息

.NET Framework

受以下版本支持:2.0、1.1、1.0

请参见

参考

ColorDialog 类
ColorDialog 成员
System.Windows.Forms 命名空间