public VirtualPropertyDescriptorDynamic(VirtualListDynamic fList, int fIndex, string fPropertyName, Type fPropertyType, bool fIsReadOnly) : base(fPropertyName, null) { this.fPropertyName = fPropertyName; this.fPropertyType = fPropertyType; this.fIsReadOnly = fIsReadOnly; this.fList = fList; this.fIndex = fIndex; }
public VirtualPropertyDescriptorDynamic(VirtualListDynamic fList, int fIndex, string fPropertyName, Type fPropertyType, bool fIsReadOnly) : base(fPropertyName, null) { this.fPropertyName = fPropertyName; this.fPropertyType = fPropertyType; this.fIsReadOnly = fIsReadOnly; this.fList = fList; this.fIndex = fIndex; }
public void LoadNewDataSet(DataSource ds) { bool bo = false; //These two lines for testing refresh on new row addition. Remove them later. if(bo) closeTab(); if (!DataSourceExists(ds)) { ///DocumentPanel panel = new DocumentPanel(); //C1DockControlPanel c1panel = new C1DockControlPanel();//Anil StackPanel sp = new StackPanel(); //sp.Background = Brushes.Red; sp.Orientation = Orientation.Horizontal; sp.HorizontalAlignment = HorizontalAlignment.Center; sp.VerticalAlignment = VerticalAlignment.Center; //sp.Margin = new Thickness(1, 1, 1, 1); string sheetname=string.Empty;//29Apr2015 if (ds.SheetName != null && ds.SheetName.Trim().Length > 0) sheetname = "{" + ds.SheetName + "}"; Label lb = new Label(); lb.FontWeight = FontWeights.DemiBold; var tabtextcolor = new SolidColorBrush(Color.FromArgb(255, (byte)48, (byte)88, (byte)144));//Foreground="#FF1579DA" lb.Foreground = tabtextcolor; lb.Content = Path.GetFileName(ds.FileName) + sheetname + " (" + ds.Name + ")";//06Aug2012 lb.ToolTip = ds.FileName+sheetname; lb.Margin = new Thickness(1, 1, 1, 1); //Button b = new Button(); b.Content="x"; Image b = new Image(); b.MouseLeftButtonUp += new System.Windows.Input.MouseButtonEventHandler(b_MouseLeftButtonUp); b.ToolTip = "Close this dataset"; b.Height = 16.0; b.Width = 22.0; string packUri = "pack://application:,,,/BlueSky;component/Images/closetab.png"; b.Source = new ImageSourceConverter().ConvertFromString(packUri) as ImageSource; sp.Children.Add(lb); sp.Children.Add(b); //sp.Children.Add(b); TabItem panel = new TabItem(); //panel.Margin = new Thickness(1, 1, 1, 1); b.Tag = panel;//for remove ///////triggers///08Feb2013 Binding bind = new Binding();//for close image to hide for inactive tabs bind.Source = panel; bind.Path = new PropertyPath("IsSelected"); bind.Converter = new BooleanToVisibilityConverter(); b.SetBinding(Image.VisibilityProperty, bind); Style st = new Style(typeof(TabItem)); var brush1 = new SolidColorBrush(Color.FromArgb(255, (byte)212, (byte)227, (byte)242));//#FFD4E3F2 st.Setters.Add(new Setter() { Property = TabItem.BackgroundProperty, Value = brush1 }); Trigger tg = new Trigger { Property = TabItem.IsSelectedProperty, Value = true }; var brush2 = new SolidColorBrush(Color.FromArgb(255, (byte)234, (byte)239, (byte)245));//#FFEAEFF5 tg.Setters.Add(new Setter() { Property = TabItem.BackgroundProperty, Value = brush2 }); st.Triggers.Add(tg); panel.Style = st; ///triggers/// DataPanel datapanel = new DataPanel(); datapanel.sortcolnames = sortcolnames;//11Apr2014 datapanel.sortorder = sortorder; //14Apr2014 VirtualListDynamic vld = new VirtualListDynamic(_analyticsService, ds); vld.DataF = _analyticsService.GetDataFrame(ds); if (vld.DataF == null) return; //03Aug2015 When SaveAs fails and tries to load the dataset closing the current one. IList list = vld; panel.Tag = ds; //panel.Tag = ds; datapanel.DS = ds; //sending reference datapanel.Data = list; datapanel.Variables = ds.Variables; datapanel.statusbar.Text = "";// "No Split";//03Dec2013 Status bar panel.Header = sp;///Path.GetFileName(ds.FileName); panel.Content = datapanel; docGroup.Items.Add(panel);//panel //panel.IsSelected = true; docGroup.SelectedItem = panel; //docGroup.SelectedIndex = docGroup.Items.Count - 1; //docGroup.Background = Brushes.Red; /color around open dataset ///layoutManager.Activate(panel); } }
//Refresh DataSet public void RefreshDataSet(DataSource ds)//A. { TabItem panel = GetTabItem(ds);//04Sep2014 //04Sep2014 TabItem panel = docGroup.SelectedItem as TabItem;//we dont want active tab. Instead we need tab that matches the title "Dataset1" DataPanel datapanel = panel.Content as DataPanel; //IList list = new VirtualListDynamic(_analyticsService, ds); VirtualListDynamic vld = new VirtualListDynamic(_analyticsService, ds); vld.DataF = _analyticsService.GetDataFrame(ds); IList list = vld; panel.Tag = ds; //panel.Tag = ds; datapanel.DS = ds;//sending reference datapanel.sortcolnames = sortcolnames; //11Apr2014 datapanel.sortorder = sortorder; //14Apr2014 datapanel.Data = list; // comment following variable refresh, if dont want to update var grid from R datasets. // Arrangement changing. Calling the arrangeVarGridCols() will solve the arrangement problem. // but I guess ObservableCollection is causing problem and throwing error for text and numeric cols // datapanel.Variables = ds.Variables; //uncommented for Compute 22Mar2013 //05Mar2013 commented b'coz Tab header changed to normal header when added var in vargrid //panel.Header = Path.GetFileName(ds.FileName); }