Share via


PrinterSettings.IsValid Propiedad

Definición

Obtiene un valor que indica si la propiedad PrinterName designa a una impresora válida.

public:
 property bool IsValid { bool get(); };
public bool IsValid { get; }
member this.IsValid : bool
Public ReadOnly Property IsValid As Boolean

Valor de propiedad

truesi la propiedad PrinterName designa a una impresora válida; en caso contrario, false.

Ejemplos

En el ejemplo de código siguiente se especifica la impresora de destino estableciendo la PrinterName propiedad y, si IsValid es true, imprime el documento en la impresora especificada. El ejemplo tiene tres requisitos previos:

  • Se ha establecido una variable denominada filePath en la ruta de acceso del archivo que se va a imprimir.

  • Se ha definido un método denominado pd_PrintPage, que controla el PrintPage evento .

  • Se ha establecido una variable denominada printer en el nombre de la impresora.

Use los System.Drawingespacios de nombres , System.Drawing.Printingy System.IO para este ejemplo.

public:
   void Printing( String^ printer )
   {
      try
      {
         streamToPrint = gcnew StreamReader( filePath );
         try
         {
            printFont = gcnew System::Drawing::Font( "Arial",10 );
            PrintDocument^ pd = gcnew PrintDocument;
            pd->PrintPage += gcnew PrintPageEventHandler(
               this, &Form1::pd_PrintPage );
            // Specify the printer to use.
            pd->PrinterSettings->PrinterName = printer;
            if ( pd->PrinterSettings->IsValid )
            {
               pd->Print();
            }
            else
            {
               MessageBox::Show( "Printer is invalid." );
            }
         }
         finally
         {
            streamToPrint->Close();
         }
      }
      catch ( Exception^ ex ) 
      {
         MessageBox::Show( ex->Message );
      }
   }
public void Printing(string printer) {
  try {
    streamToPrint = new StreamReader (filePath);
    try {
      printFont = new Font("Arial", 10);
      PrintDocument pd = new PrintDocument(); 
      pd.PrintPage += new PrintPageEventHandler(pd_PrintPage);
      // Specify the printer to use.
      pd.PrinterSettings.PrinterName = printer;

      if (pd.PrinterSettings.IsValid) {
         pd.Print();
      } 
      else {	
         MessageBox.Show("Printer is invalid.");
      }
    } 
    finally {
      streamToPrint.Close();
    }
  } 
  catch(Exception ex) {
    MessageBox.Show(ex.Message);
  }
}
Public Sub Printing(printer As String)
    Try
        streamToPrint = New StreamReader(filePath)
        Try
            printFont = New Font("Arial", 10)
            Dim pd As New PrintDocument()
            AddHandler pd.PrintPage, AddressOf pd_PrintPage
            ' Specify the printer to use.
            pd.PrinterSettings.PrinterName = printer

            If pd.PrinterSettings.IsValid then
               pd.Print()
            Else
               MessageBox.Show("Printer is invalid.")
            End If
        Finally
            streamToPrint.Close()
        End Try
    Catch ex As Exception
        MessageBox.Show(ex.Message)
    End Try
End Sub

Comentarios

Al obtener o establecer algunas propiedades, se requiere una impresora válida o, de lo contrario, se genera una excepción. Para evitar excepciones, use la IsValid propiedad después de establecer para PrinterName determinar de forma segura si la impresora es válida.

Se aplica a

Consulte también