2017-02-20 10 views
0

OpenFileDialog가 Windows Form에 있는데, Excel Add-In 내에서 동일한 작업을 수행하려고 할 때 아무 것도하지 않는 것 같습니다. 아래 코드는 내 코드입니다. 그러나 텍스트 상자, openFileDialog 및 단추 이름이 모두 동일하므로 문제가 어디에 있는지 알기 위해 고심하고 있습니다.Excel 추가 기능에 OpenFileDialog가 작동하지 않습니다?

public partial class DashboardControl : UserControl 
{ 
    public DashboardControl() 
    { 
     InitializeComponent(); 
    } 

    private void DashboardControl_Load(object sender, EventArgs e) 
    { 

    } 

    private void fileLocationText_TextChanged(object sender, EventArgs e) 
    { 

    } 


    private void openFile_Click(object sender, EventArgs e) 
    { 
     openFileDialog1.ShowDialog(); 

    } 

    private void openFileDialog1_FileOk(object sender, CancelEventArgs e) 
    { 
     fileLocationText.Text = openFileDialog1.FileName; 
    } 
} 

답변

0

대화 상자가 Excel 창 뒤에 표시되는 것처럼 보입니다. 대화 상자의 부모 창을 hanlde로 설정해야합니다. SetForegroundWindow functin을 참조하십시오. 지정된 창을 생성 한 스레드를 포 그라운드로 가져 와서 창이 활성화됩니다. 키보드 입력은 창으로 보내지며 사용자는 다양한 시각적 신호를 변경할 수 있습니다. 시스템은 전경 창을 작성한 스레드에 다른 스레드보다 약간 높은 우선 순위를 지정합니다.

은 참고 System.Windows.Forms.Form 클래스의 ShowShowDialog 방법은 부모 윈도우의 핸들을 지정할 수 있습니다 IWin32Window 인터페이스의 인스턴스를 받아들입니다.