示例#1
0
        /// <summary>
        /// 选择 Dll 路径
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void BtnSelectDll_OnClick(object sender, RoutedEventArgs e)
        {
            var dllPathRefer = new DllPathRefer(dllPathSelTreeView =>
            {
                DllPath   = dllPathSelTreeView.FullPath.Remove(0, Config.DevPlatformPath.Length);
                var types = Assembly.LoadFile(dllPathSelTreeView.FullPath).GetTypes();

                var id   = 1;
                var list = types.Select(a =>
                {
                    var dllEntry = new DgDllEntryClass {
                        Id = id++, FullName = a.FullName
                    };
                    dllEntry.CheckChanged += DllEntry_CheckChanged;
                    return(dllEntry);
                }).ToList();

                DataGridMain.ItemsSource = list;
            })
            {
                Owner = _metroWindow
            };

            dllPathRefer.ShowDialog();
        }
示例#2
0
        /// <summary>
        /// 选择项发生变化后
        /// </summary>
        /// <param name="sender"></param>
        private void DllEntry_CheckChanged(DgDllEntryClass sender)
        {
            var dgList = (List <DgDllEntryClass>)DataGridMain.ItemsSource;

            if (sender.IsChecked)
            {
                dgList.Where(a => a.Id != sender.Id).ForEach(a => a.IsChecked = false);
                EntryFunction = dgList.Single(a => a.Id == sender.Id).FullName;
            }
            else
            {
                EntryFunction = "";
            }
        }
        /// <summary>
        /// 选择项发生变化后
        /// </summary>
        /// <param name="sender"></param>
        private void DllEntry_CheckChanged(DgDllEntryClass sender)
        {
            var dgList = _bannerManagerViewModel.DgDllEntries;

            if (sender.IsChecked)
            {
                dgList.Where(a => a.Id != sender.Id).ToList().ForEach(a => a.IsChecked = false);
                _bannerManagerViewModel.EntryFunction = dgList.Single(a => a.Id == sender.Id).FullName;
            }
            else
            {
                _bannerManagerViewModel.EntryFunction = "";
            }
        }
        private void BtnSelectDll_OnClick(object sender, RoutedEventArgs e)
        {
            var dllPathRefer = new DllPathRefer(dllPathSelTreeView =>
            {
                _bannerManagerViewModel.DllPath = dllPathSelTreeView.FullPath.Remove(0, Config.DevPlatformPath.Length);
                var types = Assembly.LoadFile(dllPathSelTreeView.FullPath).GetTypes();

                var id = 1;
                types.ForEach(a =>
                {
                    var dllEntry = new DgDllEntryClass {
                        Id = id++, FullName = a.FullName
                    };
                    dllEntry.CheckChanged += DllEntry_CheckChanged;
                    _bannerManagerViewModel.DgDllEntries.Add(dllEntry);
                });
            })
            {
                Owner = _metroWindow
            };

            dllPathRefer.ShowDialog();
        }