Beispiel #1
0
        public void UpdateSkin(SkinType skin)
        {
            CurrentSkin = skin;

            SharedResourceDictionary.SharedDictionaries.Clear();
            Resources.MergedDictionaries.Add(ResourceHelper.GetSkin(skin));
            Resources.MergedDictionaries.Add(new Win.ResourceDictionary
            {
                Source = new Uri("pack://application:,,,/HandyControl;component/Themes/Theme.xaml")
            });
            this?.OnApplyTemplate();

            foreach (TabItem doc in TabsNav.Items)
            {
                CodeEditorFactory.SetEditorSkin((ICSharpCode.AvalonEdit.TextEditor)doc.Content, skin);
            }
        }
Beispiel #2
0
        private void OpenFile_Click(object sender, Win.RoutedEventArgs e)
        {
            OpenFileDialog dlg = new OpenFileDialog();

            dlg.Filter = "Poly Code File|*.poly|Any File|*.*";
            if (dlg.ShowDialog() == true)
            {
                TabItem tab = new TabItem();
                tab.Closed += delegate(object csender, EventArgs ce)
                {
                    TabItem ltab = (TabItem)csender;
                    WriteFile(((DocumentTag)ltab.Tag).DocumentLocation, ((ICSharpCode.AvalonEdit.TextEditor)ltab.Content).Text);
                };
                tab.Header  = new FileInfo(dlg.FileName).Name;
                tab.Tag     = new DocumentTag(dlg.FileName);
                tab.Content = CodeEditorFactory.CreateEditor(File.ReadAllText(dlg.FileName), CurrentSkin);
                TabsNav.Items.Add(tab);
                TabsNav.SelectedItem = tab;
            }
        }