2014-02-06 1 views
2

Window.Loaded 이벤트에서 다음을 수행하고 있습니다. 대신 {Binding} 또는 뭔가를 사용하여 XAML을 통해 동일한 작업을 수행 할 수 있습니까?바인딩 창. 적용 방법에 따라

this.Title = Application.ResourceAssembly.GetName().Name; 

나는 다음과 그것의 몇 가지 변화를 시도,하지만 그들은 작동하는 것처럼하지 않습니다

Title="{Binding Source=Application.ResourceAssembly, Path=GetName}" 

답변

1

는 속성이 당신의 창에

public string AppName 
{ 
    get 
    { 
     return Application.ResourceAssembly.GetName().Name; 
    } 
} 

및 바인드로 해당 속성은 Title입니다.

Title="{Binding AppName, RelativeSource={RelativeSource Self}}" 
+0

이것은 목적을 이깁니다. XAML 또는 C#을 통해 이러한 간단한 작업을 수행하고 싶지는 않습니다. 모든 바인딩 작업 후에 C# 코드를 작성해야한다면, 이미 가지고있는 것과 함께 살아야합니다. – dotNET

+0

예, 당신에게 동의합니다. 그 간단한 방법입니다. 귀하의 경우에는 권장되지 않았습니다. Herdo가 연결된 것은 당신에게 맞는 옷이었습니다 .. – Sankarann

2

메소드에 바인딩 할 수 있습니다. 그러나이를 구현하는 노력은 메서드 호출을 감싸는 속성에 바인딩하는 것과 비교하여 과장됩니다. 설명서에 가이드를 바인딩하는 방법은 MSDN에서 찾을 수 있습니다.

+0

당신이 말했듯이 그것은 가치있는 것보다 더 많은 노력이 필요합니다. 누군가가 멋진 소형 XAML 전용 솔루션을 제시하지 않는다면 나는'Loaded' 이벤트로 살 것입니다. – dotNET