public List <PropertiesArray> GetProperties() { List <PropertiesArray> arr = new List <PropertiesArray>(); PropertiesArray prop = null; foreach (PropertiesArray item in dataGrid.Items.SourceCollection) { prop = new PropertiesArray(); prop.Key = item.Key; prop.IsBool = item.IsBool; prop.IsDecimal = item.IsDecimal; prop.IsDate = item.IsDate; arr.Add(prop); } return(arr); }
private void button_Click(object sender, RoutedEventArgs e) { // Create OpenFileDialog Microsoft.Win32.OpenFileDialog dlg = new Microsoft.Win32.OpenFileDialog(); Stream myStream = null; MemoryStream memorystream = new MemoryStream(); byte[] bytesarray = new byte[byte.MaxValue]; StringBuilder str = new StringBuilder(); List <PropertiesArray> listitems = new List <PropertiesArray>(); // Set filter for file extension and default file extension dlg.DefaultExt = ".pdf"; dlg.Filter = "PDF Files (*.pdf)|*.pdf"; dlg.InitialDirectory = txtinitial.Text; dlg.Multiselect = false; // Display OpenFileDialog by calling ShowDialog method Nullable <bool> result = dlg.ShowDialog(); // Get the selected file name and display in a TextBox if (result == true) { // Open document string filename = dlg.FileName; if ((myStream = dlg.OpenFile()) != null) { using (myStream) { myStream.CopyTo(memorystream); bytesarray = memorystream.ToArray(); } } } if (bytesarray != null) { PdfReader pdfReader = new PdfReader(bytesarray); var fields = pdfReader.AcroFields.Fields; if (fields.Count > 0) { foreach (var acrofields in fields) { PropertiesArray prop = new PropertiesArray(); str.AppendLine($"{acrofields.Key}"); if (!acrofields.Key.Contains("~")) { prop.Key = acrofields.Key; listitems.Add(prop); } } textBox.Text = str.ToString(); textBox.SelectAll(); SampleClass fakeObject = new SampleClass(); var json = Newtonsoft.Json.JsonConvert.SerializeObject(fakeObject); dataGrid.ItemsSource = listitems; dataGrid.Visibility = Visibility.Visible; button2.Visibility = Visibility.Visible; } else { textBox.Text = string.Empty; textBlock.Text = string.Empty; dataGrid.Visibility = Visibility.Hidden; button2.Visibility = Visibility.Hidden; button3.Visibility = Visibility.Hidden; } } else { textBox.Text = string.Empty; textBlock.Text = string.Empty; dataGrid.Visibility = Visibility.Hidden; button2.Visibility = Visibility.Hidden; button3.Visibility = Visibility.Hidden; } }