Style Style Style Style Class

정의

형식 인스턴스 간에 속성, 리소스 및 이벤트 처리기를 공유할 수 있게 합니다.Enables the sharing of properties, resources, and event handlers between instances of a type.

public ref class Style : System::Windows::Threading::DispatcherObject, System::Windows::Markup::IAddChild, System::Windows::Markup::INameScope, System::Windows::Markup::IQueryAmbient
[System.Windows.Localizability(System.Windows.LocalizationCategory.Ignore)]
[System.Windows.Markup.ContentProperty("Setters")]
[System.Windows.Markup.DictionaryKeyProperty("TargetType")]
public class Style : System.Windows.Threading.DispatcherObject, System.Windows.Markup.IAddChild, System.Windows.Markup.INameScope, System.Windows.Markup.IQueryAmbient
type Style = class
    inherit DispatcherObject
    interface INameScope
    interface IAddChild
    interface IQueryAmbient
Public Class Style
Inherits DispatcherObject
Implements IAddChild, INameScope, IQueryAmbient
상속
특성
구현

예제

다음 예제에는 영향을 주는 스타일 선언을 보여 줍니다 합니다 Background 의 속성을 Control입니다.The following example shows a style declaration that will affect the Background property of a Control.

<Style x:Key="Style1">
  <Setter Property="Control.Background" Value="Yellow"/>
</Style>

위의 스타일을 적용 하려면 다음을 수행 합니다.To apply the above style, do the following:

<Label Content="Yellow Background" Style="{StaticResource Style1}" />

사용 하 여 스타일 지정 된 형식의 모든 요소에도 적용할 수 있습니다는 TargetType 속성입니다.You can also apply styles to all elements of a given type by using the TargetType property. 대상 유형을 스타일에 추가 되었음을 의미 더 이상으로 설정 하는 속성을 정규화 하는 ClassName.PropertyName 구문입니다.Adding the target type to the style means that you no longer have to fully qualify the property you are setting with the ClassName.PropertyName syntax. 적용 되는 모든에 스타일을 정의 하는 다음 예제에서는 TextBlock 요소입니다.The following example defines a style that will be applied to every TextBlock element.

<Style TargetType="{x:Type TextBlock}">
  <Setter Property="FontFamily" Value="Segoe Black" />
  <Setter Property="HorizontalAlignment" Value="Center" />
  <Setter Property="FontSize" Value="12pt" />
  <Setter Property="Foreground" Value="#777777" />
</Style>

참고

많은 WPFWPF 컨트롤의 다른 조합을 구성 WPFWPF 컨트롤, 형식의 모든 컨트롤에 적용 되는 스타일을 만드는 광범위 한 영향을 미칠 수 있습니다.Many WPFWPF controls consist of a combination of other WPFWPF controls, so creating a style that applies to all controls of a type can have broad impact. 예를 들어 대상으로 하는 스타일을 만들 경우는 TextBlock 컨트롤을 Canvas, 모든 스타일 적용 됩니다 TextBlock 캔버스의 컨트롤 경우에는 TextBlock 와 같은 다른 컨트롤의 파트는를 ListBox.For instance, if you create a style that targets the TextBlock controls in a Canvas, the style is applied to all TextBlock controls in the canvas, even if the TextBlock is part of another control, such as a ListBox.

확장 하거나 정의 된 스타일을 상속 하는 방법에 대 한 자세한 내용은 참조는 BasedOn 페이지입니다.For information on how to extend or inherit from a defined style, see the BasedOn page.

설명

설정할 수 있습니다는 Style 에서 파생 된 모든 요소에 FrameworkElement 또는 FrameworkContentElement합니다.You can set a Style on any element that derives from FrameworkElement or FrameworkContentElement. 스타일은 내부 리소스로 선언 가장 일반적으로 Resources 섹션입니다.A style is most commonly declared as a resource inside the Resources section. 모든 리소스에 적용 되는 동일한 범위 지정 규칙을 따라야 합니다. 스타일 리소스 이기 때문에 적용할 수 있는 위치에 영향을 줍니다. 스타일을 선언 하 합니다.Because styles are resources, they obey the same scoping rules that apply to all resources, so where you declare a style affects where it can be applied. 응용 프로그램 정의의 루트 요소에서 스타일을 선언 하는 예를 들어 하는 경우 XAMLXAML 파일인 응용 프로그램에서 어디서 나 사용할 수 있습니다.If, for instance, you declare the style in the root element of your application definition XAMLXAML file, the style can be used anywhere in your application. 탐색 응용 프로그램을 만드는 경우 응용 프로그램 중 하나에 선언 된 스타일 XAMLXAML 파일, 스타일에만 사용할 수 있습니다 XAMLXAML 파일입니다.If you are creating a navigation application and declare the style in one of the application's XAMLXAML files, the style can be used only in that XAMLXAML file. 리소스 범위 지정 규칙에 대 한 자세한 내용은 참조 하세요. XAML 리소스합니다.For more information on scoping rules for resources, see XAML Resources.

스타일이 선언은으로 구성 됩니다는 Style 하나 이상의 컬렉션을 포함 하는 개체 Setter 개체입니다.The style declaration consists of a Style object that contains a collection of one or more Setter objects. Setter 이루어져를 PropertyValue합니다.Each Setter consists of a Property and a Value. 속성이 요소의 스타일 속성의 이름에 적용 하는 것입니다.The property is the name of the property of the element the style is to apply to. 스타일 리소스로 선언 된 후에 다른 리소스와 마찬가지로 다음 참조할 수 있습니다.After the style is declared as a resource, it can then be referenced just like any other resource.

참고

동일한 setter 컬렉션에서 둘 이상의 setter 인지 Property 속성 값을 선언 된 setter를 마지막으로 사용 됩니다.If there is more than one setter in the setter collection with the same Property property value, the setter that is declared last is used. 마찬가지로, 동일한 속성 값 및 요소 스타일에서을 직접 설정 하는 경우 직접 요소에 설정 된 값이 우선 적용 됩니다.Similarly, if you set a value for the same property in a style and on an element directly, the value set on the element directly takes precedence.

WPF(Windows Presentation Foundation)Windows Presentation Foundation (WPF) 스타일 및 템플릿 모델 유지 관리 및을 프레젠테이션과 논리의 분리의 공유를 허용 합니다.The WPF(Windows Presentation Foundation)Windows Presentation Foundation (WPF) styling and templating model allows maintenance and sharing of a look as well as the separation of presentation and logic. 스타일 지정 및 템플릿 모델을 사용자 지정할 수 있도록 하는 기능 집합을 포함 하면 UIUI합니다.The styling and templating model includes a suite of features that enable you to customize your UIUI. 이 기능 집합을 포함 합니다 Style 다음 클래스:This suite of features includes the Style class as well as the following:

자세한 내용은 스타일 지정 및 템플릿을 참조하세요.For more information, see Styling and Templating.

생성자

Style() Style() Style() Style()

Style 클래스의 새 인스턴스를 초기화합니다.Initializes a new instance of the Style class.

Style(Type) Style(Type) Style(Type) Style(Type)

지정된 Style에 사용할 Type 클래스의 새 인스턴스를 초기화합니다.Initializes a new instance of the Style class to use on the specified Type.

Style(Type, Style) Style(Type, Style) Style(Type, Style) Style(Type, Style)

지정된 Style을 기반으로, 그리고 지정된 Type에 대해 사용할 Style 클래스의 새 인스턴스를 초기화합니다.Initializes a new instance of the Style class to use on the specified Type and based on the specified Style.

속성

BasedOn BasedOn BasedOn BasedOn

현재 스타일의 기준이 되는 정의된 스타일을 가져오거나 설정합니다.Gets or sets a defined style that is the basis of the current style.

Dispatcher Dispatcher Dispatcher Dispatcher

가져옵니다 합니다 DispatcherDispatcherObject 연관 됩니다.Gets the Dispatcher this DispatcherObject is associated with.

(Inherited from DispatcherObject)
IsSealed IsSealed IsSealed IsSealed

이 스타일이 읽기 전용이고 변경될 수 없는지 여부를 나타내는 값을 가져옵니다.Gets a value that indicates whether the style is read-only and cannot be changed.

Resources Resources Resources Resources

이 스타일의 범위 내에서 사용할 수 있는 리소스의 컬렉션을 가져오거나 설정합니다.Gets or sets the collection of resources that can be used within the scope of this style.

Setters Setters Setters Setters

SetterEventSetter 개체의 컬렉션을 가져옵니다.Gets a collection of Setter and EventSetter objects.

TargetType TargetType TargetType TargetType

이 스타일을 적용할 형식을 가져오거나 설정합니다.Gets or sets the type for which this style is intended.

Triggers Triggers Triggers Triggers

지정된 조건에 따라 속성 값을 적용하는 TriggerBase 개체 컬렉션을 가져옵니다.Gets a collection of TriggerBase objects that apply property values based on specified conditions.

메서드

CheckAccess() CheckAccess() CheckAccess() CheckAccess()

호출 스레드에서이에 대 한 액세스에 있는지 여부를 결정 DispatcherObject합니다.Determines whether the calling thread has access to this DispatcherObject.

(Inherited from DispatcherObject)
Equals(Object) Equals(Object) Equals(Object) Equals(Object)

지정한 개체와 현재 개체가 같은지 여부를 확인합니다.Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Style의 해시 코드를 반환합니다.Returns the hash code for this Style.

GetType() GetType() GetType() GetType()

현재 인스턴스의 Type을 가져옵니다.Gets the Type of the current instance.

(Inherited from Object)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

현재 Object의 단순 복사본을 만듭니다.Creates a shallow copy of the current Object.

(Inherited from Object)
RegisterName(String, Object) RegisterName(String, Object) RegisterName(String, Object) RegisterName(String, Object)

현재 이름 범위에 새 이름-개체 쌍을 등록합니다.Registers a new name-object pair in the current namescope.

Seal() Seal() Seal() Seal()

이 스타일과 모든 팩터리 및 트리거를 변경할 수 없도록 잠급니다.Locks this style and all factories and triggers so they cannot be changed.

ToString() ToString() ToString() ToString()

현재 개체를 나타내는 문자열을 반환합니다.Returns a string that represents the current object.

(Inherited from Object)
UnregisterName(String) UnregisterName(String) UnregisterName(String) UnregisterName(String)

이름 범위에서 이름-개체 매핑을 제거합니다.Removes a name-object mapping from the namescope.

VerifyAccess() VerifyAccess() VerifyAccess() VerifyAccess()

호출 스레드가이에 대 한 액세스를 적용 DispatcherObject합니다.Enforces that the calling thread has access to this DispatcherObject.

(Inherited from DispatcherObject)

명시적 인터페이스 구현

IAddChild.AddChild(Object) IAddChild.AddChild(Object) IAddChild.AddChild(Object) IAddChild.AddChild(Object)

자식 개체를 추가합니다.Adds a child object.

IAddChild.AddText(String) IAddChild.AddText(String) IAddChild.AddText(String) IAddChild.AddText(String)

노드의 텍스트 콘텐츠를 개체에 추가합니다.Adds the text content of a node to the object.

INameScope.FindName(String) INameScope.FindName(String) INameScope.FindName(String) INameScope.FindName(String)

제공된 식별 이름이 있는 개체를 반환합니다.Returns an object that has the provided identifying name.

IQueryAmbient.IsAmbientPropertyAvailable(String) IQueryAmbient.IsAmbientPropertyAvailable(String) IQueryAmbient.IsAmbientPropertyAvailable(String) IQueryAmbient.IsAmbientPropertyAvailable(String)

지정된 앰비언트 속성을 현재 범위에서 사용할 수 있는지 여부를 쿼리합니다.Queries whether a specified ambient property is available in the current scope.

ISealable.CanSeal ISealable.CanSeal ISealable.CanSeal ISealable.CanSeal
ISealable.IsSealed ISealable.IsSealed ISealable.IsSealed ISealable.IsSealed
ISealable.Seal() ISealable.Seal() ISealable.Seal() ISealable.Seal()

적용 대상

추가 정보