public static List<CardInfo> GetReaderNames()
 {
   List<CardInfo> lst = new List<CardInfo>();
   SmartCardIO cardIO = new SmartCardIO();
   List<String> connectedCards = cardIO.GetConnected();
 
   foreach (String s in connectedCards)
   {
     CardInfo info = new CardInfo();
     ABC4TrustSmartCard smartCard = new ABC4TrustSmartCard(s);
     info.ReaderName = s;
     string version;
     ErrorCode err = smartCard.GetVersion(out version);
     if (err.IsOK)
     {
       info.CardVersion = version;
     }
     CardMode cardMode;
     err = smartCard.GetMode(out cardMode);
     if (err.IsOK)
     {
       info.CardMode = (int)cardMode;
     }
     lst.Add(info);
   }
   return lst;
 }
    private void UpdateDataGrid()
    {
      SmartCardIO cardIO = new SmartCardIO();
      List<String> connectedCards = cardIO.GetConnected();
      cardInfoLst = new List<CardInfo>();
      
      foreach (String s in connectedCards)
      {
        CardInfo info = new CardInfo();
        ABC4TrustSmartCard.ABC4TrustSmartCard smartCard = new ABC4TrustSmartCard.ABC4TrustSmartCard(s);
        info.ReaderName = s;
        string version;
        ErrorCode err = smartCard.GetVersion(out version);
        if (err.IsOK)
        {
          info.CardVersion = version;
        }
        CardMode cardMode;
        err = smartCard.GetMode(out cardMode);
        if (err.IsOK)
        {
          info.CardMode = (int)cardMode;
        }
        cardInfoLst.Add(info);
      }

      this.dataGrid1.ItemsSource = cardInfoLst;
      this.modeButton.Visibility = Visibility.Hidden;
      this.initCard.Visibility = Visibility.Hidden;
    }