Udostępnij za pośrednictwem


Przy użyciu adresu URL dostępu w aplikacji systemu Windows

Chociaż adres URL dostępu do serwer raportów jest zoptymalizowany dla środowiska sieci Web, można użyć do adresów URL, aby osadzić Reporting Services Raporty do Microsoft aplikacji systemu Windows.Jednak dostęp do adresu URL, który obejmuje Windows Forms nadal wymaga użycia technologii przeglądarki sieci Web.Można użyć następujących scenariuszy integracja z dostępu do adresu URL i Windows Forms:

  • Wyświetlanie raportu z aplikacji Windows formularza przez uruchomienie przeglądarki sieci Web programowo.

  • Użyj WebBrowser formantu na formularzu systemu Windows do wyświetlania raportu.

Uruchamianie programu Internet Explorer z formularza systemu Windows

Można użyć Process klasy do dostępu procesu, na którym jest uruchomiony na komputerze.The Process class is a useful Microsoft .NET Framework construct for starting, stopping, controlling, and monitoring applications.Aby wyświetlić raport określonego w sieci baza danych serwera raportów, można uruchomić IExplore proces przekazywania w adresie URL do raportu.Poniższy przykład kodu można użyć do uruchomienia Microsoft programu Internet Explorer i przebiegu określonego raportu adresu URL, gdy użytkownik kliknie przycisk na formularzu systemu Windows.

Private Sub viewReportButton_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles viewReportButton.Click
   ' Build the URL access string based on values supplied by a user
   Dim url As String = serverUrlTextBox.Text + "?" & reportPathTextBox.Text & _
   "&rs:Command=Render" & "&rs:Format=HTML4.0"

   ' If the user does not select the toolbar check box,
   ' turn the toolbar off in the HTML Viewer
   If toolbarCheckBox.Checked = False Then
      url += "&rc:Toolbar=False"
   End If
   ' load report in the Web browser
   Try
      System.Diagnostics.Process.Start("IExplore", url)
   Catch
      MessageBox.Show("The system could not start the specified report using Internet Explorer.", _
      "An error has occurred", MessageBoxButtons.OK, MessageBoxIcon.Error)
   End Try
End Sub 'viewReportButton_Click
// Sample click event for a Button control on a Windows Form
private void viewReportButton_Click(object sender, System.EventArgs e)
{
   // Build the URL access string based on values supplied by a user
   string url = serverUrlTextBox.Text + "?" + reportPathTextBox.Text +
      "&rs:Command=Render" + "&rs:Format=HTML4.0";

   // If the user does not check the toolbar check box,
   // turn the toolbar off in the HTML Viewer
   if (toolbarCheckBox.Checked == false)
      url += "&rc:Toolbar=False";

   // load report in the Web browser
   try
   {
      System.Diagnostics.Process.Start("IExplore", url);
   }

   catch (Exception)
   {
      MessageBox.Show(
         "The system could not open the specified report using Internet Explorer.", 
         "An error has occurred", MessageBoxButtons.OK, MessageBoxIcon.Error);
   }
}

Więcej informacji o składni z serwer raportów ciąg dostępu do adresu URL, zobacz Składnia dostępu do adresu URL.

Osadzanie formantu przeglądarki w formularzu systemu Windows

Jeśli nie chcesz wyświetlić raport w zewnętrznych przeglądarki sieci Web, można osadzić przeglądarki sieci Web bezproblemowo jako część formularza Windows używając WebBrowser kontroli.

Aby dodać formant WebBrowser do formularza systemu Windows

  1. Create a new Windows application in either Microsoft Visual C# or Microsoft Visual Basic.

  2. Zlokalizuj WebBrowser kontroli w Przybornik okno dialogowe.

    Jeśli Przybornik jest niewidoczny masz dostęp do niego klikając widoku element menu i wybierając Przybornik.

  3. Drag the WebBrowsercontrol onto the design surface of your Windows Form.

    The WebBrowsercontrol named webBrowser1 is added to the Form

Można bezpośrednio WebBrowser formantu do adresu URL, wywołując jego Nawigacja metoda.Można przypisać określony ciąg adres URL dostępu do sieci WebBrowser kontroli przy uruchomieniu czas jak pokazano w następującym przykładzie.

Dim url As String = "https://localhost/reportserver?/" & _
                    "AdventureWorks2008R2 Sample Reports/" & _
                    "Company Sales&rs:Command=Render"
WebBrowser1.Navigate(url)
string url = "https://localhost/reportserver?/" +
             "AdventureWorks2008R2 Sample Reports/" +
             "Company Sales&rs:Command=Render";
webBrowser1.Navigate(url);