コード例 #1
0
        public void checkedthemebox(object sender, EventArgs e)
        {
            CheckBox  checkBox          = sender as CheckBox;
            LayerItem _layeritem        = layeritems.FirstOrDefault(x => x.checkbox == checkBox);
            LayerCheckBoxClickArgs args = new LayerCheckBoxClickArgs();

            args.Item = _layeritem;
            if (OnLayerCheckBoxClick != null)
            {
                OnLayerCheckBoxClick(this, args);
            }

            foreach (LayerItem lt in _layeritem.childs)
            {
                lt.checkbox.IsChecked = true;
            }
        }
コード例 #2
0
        public void uncheckedlayerbox(object sender, EventArgs e)
        {
            CheckBox  checkBox          = (CheckBox)(sender);
            LayerItem _layeritem        = layeritems.FirstOrDefault(x => x.checkbox == checkBox);
            LayerCheckBoxClickArgs args = new LayerCheckBoxClickArgs();

            args.Item = _layeritem;
            if (OffLayerCheckBoxClick != null)
            {
                OffLayerCheckBoxClick(this, args);
            }


            if (_layeritem.parent.childs.FirstOrDefault(x => x.checkbox.IsChecked == true) == null)
            {
                _layeritem.parent.checkbox.IsChecked = false;
            }
        }
コード例 #3
0
        public void checkedlayerbox(object sender, EventArgs e)
        {
            CheckBox  checkBox          = sender as CheckBox;
            LayerItem _layeritem        = layeritems.FirstOrDefault(x => x.checkbox == checkBox);
            LayerCheckBoxClickArgs args = new LayerCheckBoxClickArgs();

            args.Item = _layeritem;
            if (OnLayerCheckBoxClick != null)
            {
                OnLayerCheckBoxClick(this, args);
            }

            _layeritem.parent.checkbox.Checked  -= checkedthemebox;
            _layeritem.parent.checkbox.IsChecked = true;
            args.Item = layeritems.FirstOrDefault(x => x.checkbox == _layeritem.parent.checkbox);
            if (OnLayerCheckBoxClick != null)
            {
                OnLayerCheckBoxClick(this, args);
            }
            _layeritem.parent.checkbox.Checked += checkedthemebox;
        }
コード例 #4
0
        public LayersWindow(ThemeView themeview, LayerCollection layers)
        {
            InitializeComponent();

            //Initialize the checkboxs based on themesections and themelayers
            layeritems = new List <LayerItem>();
            foreach (ThemeSection themsection in themeview.themesections)
            {
                CheckBox _themebox = themecheckbox(themsection.name);
                this.addCheckbox.Children.Add(_themebox);
                LayerItem _themelayeritem = new LayerItem();
                _themelayeritem.checkbox = _themebox;

                _themelayeritem.themesection = themsection;
                layeritems.Add(_themelayeritem);

                //增加有tpk对应的复选框
                foreach (ThemeLayer themelayer in themsection.themelayers)
                {
                    string st = themelayer.tpkname;
                    if (st.Contains("无tpk"))
                    {
                        st = st.Split('-')[0];
                    }
                    CheckBox _layerbox = layerbox(st);
                    this.addCheckbox.Children.Add(_layerbox);
                    LayerItem _layeritem = new LayerItem();
                    _layeritem.checkbox = _layerbox;

                    _layeritem.themelayer = themelayer;
                    _layeritem.parent     = _themelayeritem;
                    layeritems.Add(_layeritem);
                    _themelayeritem.childs.Add(_layeritem);
                }
            }
        }