Note

Access to this page requires authorization. You can try signing in or .

Access to this page requires authorization. You can try .

VisualStyleInformation Class

Definition

Important

Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.

Provides information about the current visual style of the operating system.

public ref class VisualStyleInformation abstract sealed
public static class VisualStyleInformation
type VisualStyleInformation = class
Public Class VisualStyleInformation
Inheritance
VisualStyleInformation

Examples

The following code example displays the values of the VisualStyleInformation properties in a ListView control.

// This is a simple example for VisualStyleInformation that displays
// all of the visual style values in a ListView.

#using <System.Drawing.dll>
#using <System.Windows.Forms.dll>
#using <System.dll>

using namespace System;
using namespace System::Drawing;
using namespace System::Text;
using namespace System::Reflection;
using namespace System::Windows::Forms;
using namespace System::Windows::Forms::VisualStyles;

namespace VisualStyleInformationSample
{
 public ref class StyleInfo : public Form
 {
 private:
 ListView^ displayStyleInfo;

 public:
 StyleInfo()
 {
 this->displayStyleInfo = gcnew ListView();
 this->ClientSize = System::Drawing::Size(500, 500);
 this->Text = "VisualStyleInformation Property Values";

 displayStyleInfo->Bounds = System::Drawing::Rectangle
 (System::Drawing::Point(10, 10),System::Drawing::Size(400, 300));
 displayStyleInfo->View = View::Details;
 displayStyleInfo->FullRowSelect = true;
 displayStyleInfo->Sorting = SortOrder::Ascending;

 Type^ typeInfo = VisualStyleInformation::typeid;
 Object^ propertyValue;

 // Declare an array of static/Shared property details for the
 // VisualStyleInformation class.
 array<PropertyInfo^>^ elementProperties = typeInfo->GetProperties
 (BindingFlags::Static | BindingFlags::Public);

 String^ name;
 // Insert each property name and value into the ListView.
 for each (PropertyInfo^ property in elementProperties)
 {
 name = property->Name;
 propertyValue = property->GetValue(nullptr,
 BindingFlags::Static, nullptr, nullptr, nullptr);
 ListViewItem^ newItem = gcnew ListViewItem(name, 0);
 newItem->SubItems->Add(propertyValue->ToString());
 displayStyleInfo->Items->Add(newItem);
 }

 // Create columns for the items and subitems.
 displayStyleInfo->Columns->Add("Property", -2,
 System::Windows::Forms::HorizontalAlignment::Left);
 displayStyleInfo->Columns->Add("Value", -2,
 System::Windows::Forms::HorizontalAlignment::Left);

 // Add the ListView to the control collection.
 this->Controls->Add(displayStyleInfo);
 }
 };
}

int main()
{
 Application::EnableVisualStyles();
 Application::Run(gcnew VisualStyleInformationSample::StyleInfo());
}
// This is a simple example for VisualStyleInformation that displays
// all of the visual style values in a ListView.

using System;
using System.Drawing;
using System.Text;
using System.Reflection;
using System.Windows.Forms;
using System.Windows.Forms.VisualStyles;

namespace VisualStyleInformationSample
{
 public class Form1 : Form
 {
 private ListView listView1 = new ListView();

 [STAThread]
 static void Main()
 {
 Application.EnableVisualStyles();
 Application.Run(new Form1());
 }

 public Form1()
 {
 this.ClientSize = new Size(500, 500);
 this.Text = "VisualStyleInformation Property Values";

 listView1.Bounds = new Rectangle(new Point(10, 10),
 new Size(400, 300));
 listView1.View = View.Details;
 listView1.FullRowSelect = true;
 listView1.Sorting = SortOrder.Ascending;

 Type typeInfo = typeof(VisualStyleInformation);
 StringBuilder name = new StringBuilder();
 object propertyValue;

 // Declare an array of static/Shared property details for the
 // VisualStyleInformation class.
 PropertyInfo[] elementProperties =
 typeInfo.GetProperties(BindingFlags.Static | BindingFlags.Public);

 // Insert each property name and value into the ListView.
 foreach (PropertyInfo property in elementProperties)
 {
 name.Append(property.Name);
 propertyValue = property.GetValue(null,
 BindingFlags.Static, null, null, null);
 ListViewItem newItem = new ListViewItem(name.ToString(), 0);
 newItem.SubItems.Add(propertyValue.ToString());
 listView1.Items.Add(newItem);
 name.Remove(0, name.Length);
 }

 // Create columns for the items and subitems.
 listView1.Columns.Add("Property", -2, System.Windows.Forms.HorizontalAlignment.Left);
 listView1.Columns.Add("Value", -2, System.Windows.Forms.HorizontalAlignment.Left);

 // Add the ListView to the control collection.
 this.Controls.Add(listView1);
 }
 }
}
Imports System.Drawing
Imports System.Text
Imports System.Reflection
Imports System.Windows.Forms
Imports System.Windows.Forms.VisualStyles

Namespace VisualStyleInformationSample

 Public Class Form1
 Inherits Form
 Private listView1 As New ListView()

 <STAThread()> _
 Shared Sub Main()
 Application.EnableVisualStyles()
 Application.Run(New Form1())
 End Sub

 Public Sub New()
 Me.Text = "VisualStyleInformation Property Values"
 Me.AutoSize = True

 With listView1
 .Bounds = New Rectangle(New Point(10, 10), New Size(400, 300))
 .View = View.Details
 .Sorting = SortOrder.Ascending
 End With

 ' Get an array of property details for the
 ' VisualStyleInformation class.
 Dim typeInfo As Type = GetType(VisualStyleInformation)
 Dim elementProperties As PropertyInfo() = _
 typeInfo.GetProperties(BindingFlags.Static Or BindingFlags.Public)

 ' Use these variables to store the name and value of each property.
 Dim propertyName As New StringBuilder()
 Dim propertyValue As Object
 Dim prop As PropertyInfo

 For Each prop In elementProperties
 ' Get the name and value of the current property.
 propertyName.Append(prop.Name)
 propertyValue = prop.GetValue(Nothing, BindingFlags.Static, _
 Nothing, Nothing, Nothing)
 ' Insert the property name and value into the ListView.
 Dim newItem As New ListViewItem(propertyName.ToString(), 0)
 newItem.SubItems.Add(propertyValue.ToString())
 listView1.Items.Add(newItem)
 ' Clear the property name for the next iteration.
 propertyName.Remove(0, propertyName.Length)
 Next prop

 ' Create columns for the items and subitems.
 listView1.Columns.Add("Property", -1, _
 System.Windows.Forms.HorizontalAlignment.Left)
 listView1.Columns.Add("Value", -1, _
 System.Windows.Forms.HorizontalAlignment.Left)
 Me.Controls.Add(listView1)
 End Sub
 End Class
End Namespace

Remarks

This class exposes static properties that provide details about the current visual style of the operating system.

Properties

Name Description
Author

Gets the author of the current visual style.

ColorScheme

Gets the color scheme of the current visual style.

Company

Gets the company that created the current visual style.

ControlHighlightHot

Gets the color that the current visual style uses to indicate the hot state of a control.

Copyright

Gets the copyright of the current visual style.

Description

Gets a description of the current visual style.

DisplayName

Gets the display name of the current visual style.

IsEnabledByUser

Gets a value indicating whether the user has enabled visual styles in the operating system.

IsSupportedByOS

Gets a value indicating whether the operating system supports visual styles.

MinimumColorDepth

Gets the minimum color depth for the current visual style.

Size

Gets a string that describes the size of the current visual style.

SupportsFlatMenus

Gets a value indicating whether the current visual style supports flat menus.

TextControlBorder

Gets the color that the current visual style uses to paint the borders of controls that contain text.

Url

Gets a URL provided by the author of the current visual style.

Version

Gets the version of the current visual style.

Applies to

See also


Feedback

Was this page helpful?