Gets the equivalent string for the passed property ID.
             
             
             
            
Syntax
| Visual Basic (Declaration) |   | 
|---|
Public Sub GetRootItem( _
   ByVal item As Object _
)   | 
 
| Visual Basic (Usage) |  Copy Code | 
|---|
Dim instance As WiaSession
Dim item As Object
 
instance.GetRootItem(item)
  | 
 
            Parameters
- item
 
- Handle to the item which represents the item for which you wish to retrieve 
            its root item. You can retrieve this parameter by either calling the WiaSession.GetRootItem 
            method to get the device’s root item itself or by enumerating the child items of the device through a call 
            to EnumChildItems method.
 
 
             
              
             
             
            
Example
 
             
| Visual Basic |  Copy Code | 
|---|
Dim wiaSession As WiaSession 
Public Sub GetRootItemExample(ByVal parent As IWin32Window) 
   If (Not WiaSession.IsAvailable(WiaVersion.Version1)) Then 
      MessageBox.Show("WIA version 1.0 not installed.") 
      Return 
   End If 
 
   wiaSession = New WiaSession() 
   wiaSession.Startup(WiaVersion.Version1) 
 
   Dim res As DialogResult = wiaSession.SelectDeviceDlg(parent, WiaDeviceType.Default, WiaSelectSourceFlags.NoDefault) 
   If res <> DialogResult.OK Then 
      MessageBox.Show("Error selecting WIA device.") 
      wiaSession.Shutdown() 
      Return 
   End If 
 
   wiaSession.GetRootItem(Nothing) 
   If Not wiaSession.RootItem Is Nothing Then 
      AddHandler wiaSession.EnumItemsEvent, AddressOf session_EnumItemsEvent 
 
      wiaSession.EnumChildItems(wiaSession.RootItem) 
 
      RemoveHandler wiaSession.EnumItemsEvent, AddressOf session_EnumItemsEvent 
   End If 
 
   wiaSession.Shutdown() 
End Sub 
 
Private Sub session_EnumItemsEvent(ByVal sender As Object, ByVal e As WiaEnumItemsEventArgs) 
   If Not e.Item Is Nothing Then 
      Dim properties As WiaProperties = WiaProperties.Empty 
      Dim dataTransfer As WiaDataTransferProperties = WiaDataTransferProperties.Empty 
      Dim imageEffects As WiaImageEffectsProperties = WiaImageEffectsProperties.Empty 
 
      wiaSession.GetProperties(e.Item) 
      properties = wiaSession.Properties 
 
      properties.MaximumNumberOfPages = 0  
      dataTransfer.ImageDataType = WiaImageDataType.Grayscale 
      imageEffects.Brightness = 250 
 
      properties.DataTransfer = dataTransfer 
      properties.ImageEffects = imageEffects 
      wiaSession.Properties = properties 
 
      AddHandler wiaSession.SetPropertiesEvent, AddressOf session_SetPropertiesEvent 
 
      wiaSession.SetProperties(e.Item) 
 
      RemoveHandler wiaSession.SetPropertiesEvent, AddressOf session_SetPropertiesEvent 
 
      wiaSession.FreeItem(e.Item) 
   End If 
End Sub 
 
Private Sub session_SetPropertiesEvent(ByVal sender As Object, ByVal e As WiaSetPropertiesEventArgs) 
   If e.Error <= 0 Then 
      Console.WriteLine("Failed to set the below property:" & Constants.vbLf + Constants.vbTab & "Property Id: {0}" & Constants.vbLf + Constants.vbTab & "Property Value: {1}" & Constants.vbLf + Constants.vbTab & "Error: {2}" & Constants.vbLf + Constants.vbLf, e.PropertyId.ToString(), Convert.ToInt32(e.Value).ToString(), e.Error.ToString()) 
   End If 
End Sub | 
 
| C# |  Copy Code | 
|---|
WiaSession wiaSession;  public void GetRootItemExample(IWin32Window parent)  {     if (!WiaSession.IsAvailable(WiaVersion.Version1))     {        MessageBox.Show("WIA version 1.0 not installed.");        return;     }       wiaSession = new WiaSession();     wiaSession.Startup(WiaVersion.Version1);       DialogResult res = wiaSession.SelectDeviceDlg(parent, WiaDeviceType.Default, WiaSelectSourceFlags.NoDefault);     if (res != DialogResult.OK)     {        MessageBox.Show("Error selecting WIA device.");        wiaSession.Shutdown();        return;     }       wiaSession.GetRootItem(null);     if (wiaSession.RootItem != null)     {        wiaSession.EnumItemsEvent += new EventHandler<WiaEnumItemsEventArgs>(wiaSession_EnumItemsEvent);          wiaSession.EnumChildItems(wiaSession.RootItem);          wiaSession.EnumItemsEvent -= new EventHandler<WiaEnumItemsEventArgs>(wiaSession_EnumItemsEvent);     }       wiaSession.Shutdown();  }    void wiaSession_EnumItemsEvent(object sender, WiaEnumItemsEventArgs e)  {     if(e.Item != null)     {        WiaProperties properties = WiaProperties.Empty;        WiaDataTransferProperties dataTransfer = WiaDataTransferProperties.Empty;        WiaImageEffectsProperties imageEffects = WiaImageEffectsProperties.Empty;          wiaSession.GetProperties(e.Item);        properties = wiaSession.Properties;          properties.MaximumNumberOfPages = 0;   // scan all pages in feeder        dataTransfer.ImageDataType = WiaImageDataType.Grayscale;        imageEffects.Brightness = 250;          properties.DataTransfer = dataTransfer;        properties.ImageEffects = imageEffects;        wiaSession.Properties = properties;          wiaSession.SetPropertiesEvent += new EventHandler<WiaSetPropertiesEventArgs>(wiaSession_SetPropertiesEvent);          wiaSession.SetProperties(e.Item);          wiaSession.SetPropertiesEvent -= new EventHandler<WiaSetPropertiesEventArgs>(wiaSession_SetPropertiesEvent);          wiaSession.FreeItem(e.Item);     }  }    void wiaSession_SetPropertiesEvent(object sender, WiaSetPropertiesEventArgs e)  {     if(e.Error <= 0)     {        Console.WriteLine("Failed to set the below property:\n\tProperty Id: {0}\n\tProperty Value: {1}\n\tError: {2}\n\n", e.PropertyId.ToString(), Convert.ToInt32(e.Value).ToString(), e.Error.ToString());     }  } | 
 
  
            
            Remarks
            
Requirements
Target Platforms: Microsoft .NET Framework 3.0, Windows 2000, Windows XP, Windows Vista, Windows Server 2003 family, Windows Server 2008 family
 
            
            
See Also