2012-11-29 2 views
0

TextBoxButton이있는 양식을 고려하십시오. 해당 버튼을 클릭하면 실행시에 Font 속성 대화 상자가 나타납니다.런타임에 PropertyGrid없이 글꼴의 속성 대화 상자를 여는 방법

디자이너 중에 PropertyGrid의 속성 오른쪽에있는 단추를 클릭하고이 TextBox에 대한 글꼴을 조작하는 편집기 창을 가져올 수 있습니다. 런타임 중에 폼에 PropertyGrid을 추가하고 TextBox을 가리키면 편집기 창을 가져올 수도 있습니다.

폼에 PropertyGrid이 없어도 버튼을 클릭하여 런타임에이 편집기 창을 어떻게 얻을 수 있습니까? 나는 PropertyDescriptor이 설명에서 UITypeEditor을받은 적이 있지만

, 나는 UITypeEditor.EditValue를 호출 할 때 ITypeDescriptorContextIServiceProvider의 인스턴스를 얻기 위해 전화를 모르겠어요. -

편집 내가 쉽게 솔루션을 컨트롤의이 문제를 물어 때문에, 나는이 주제와 관련된 다른 질문을했습니다 How to open the properties dialog for a Complex Property without a PropertyGrid at runtime

+0

감사합니다, 나는 미래에 마음에 서식을하겠습니다. 이것은 분명히 문제의 객체를 더 쉽게 알 수있게 해줍니다! – Mohgeroth

답변

1

당신은 표준 글꼴 대화 상자를 표시하는 FontDialog를 사용할 수 있습니다

new FontDialog().ShowDialog(); 

/쓰기 글꼴을 읽으려면 : 편집 Picrofo EGY에 대한

var dlg = new FontDialog(); 
dlg.Font = textBox1.Font; 
if (dlg.ShowDialog() == System.Windows.Forms.DialogResult.OK) 
{ 
    textBox1.Font = dlg.Font; 
} 
+0

아마 다른 질문을 제출해야합니다 ... 이것은 내가 찾고있는 접근 방식이 아니 었습니다 ... 저는 그러한 질문을하지 않는 커스텀 UITypeEditor 컨트롤을 위해 이것을하려고하기 때문에 질문을 단순화하려고했습니다. 기능은 아직 (그것을 만들려고) – Mohgeroth

+0

하지만 질문에 대한 질문,이 작동하지 않습니다 – Mohgeroth

관련 문제