2012-03-22 10 views
2

新しいIEブラウザインスタンスを動的に作成し、そこからaspxページを開きます。すべて正常に動作しますが、ブラウザは画面の前面にポップしません。タスクバーのAspxページを見ると、そこからクリックすると前面に表示されます。 IEが作成されるとすぐに、そのページをすべての画面の前に表示する方法。IEウィンドウを画面の前に表示するには

新しいIEインスタンスを作成するために使用したコードを貼り付けました。

public class IEInstance 
{ 
    public SHDocVw.InternetExplorer IE1; 
    public void IEInstanceCls(string check) 
    { 
     IE1 = new SHDocVw.InternetExplorer(); 
     object Empty = 0; 
     string urlpath = " ";    
     urlpath = "http://localhost/TestPage.aspx?";   
     object URL = urlpath; 
     IE1.Top = 260; 
     IE1.Left = 900; 
     IE1.Width = 390; 
     IE1.Height = 460; 
     IE1.StatusBar = false; 
     IE1.ToolBar = 0; 
     IE1.MenuBar = false; 
     IE1.Visible = true; 
     IE1.Navigate2(ref URL, ref Empty, ref Empty, ref Empty, ref Empty); 
    } 
} 

この問題を解決するのに手伝ってください。

答えて

3

Internet Explorerのオブジェクトは、ウィンドウへのハンドルであるHWNDプロパティがあり、ありがとうございました。あなたはファイルの先頭付近このようなSetForgroundWindowのWindows APIをインポートする必要があります

SetForegroundWindow((IntPtr)IE1.HWND); 

:あなたは次のように前面にウィンドウをもたらすためにそれを使用することができます。

[DllImport("user32.dll")] 
    static extern bool SetForegroundWindow(IntPtr hWnd); 
関連する問題