internal void Bind(ToolStripMenuItem parent, ToolStripMenuItem collapseTree) { this.collapseTree = collapseTree; var listStyleMenuItems = ToolStripRadioMenuItem <View> .CreateForProperty(nameof(ListStyle), this, View.Tile); var orderByMenuItems = OrderByToolStripItem.CreateForOwner(this, OrderByEnum.Date, ascending: false); parent.DropDownItems.AddRange(listStyleMenuItems); parent.DropDownItems.Add(new ToolStripSeparator()); parent.DropDownItems.AddRange(orderByMenuItems); collapseTree.Click += (o, e) => OnPropertyChanged(nameof(Collapsed)); }
protected ToolStripRadioMenuItem(TValue value) { Text = value.ToString(); Tag = value; Checked = value.Equals(Value); if (Checked) { oldChecked = this; } Click += delegate(object o, EventArgs e) { oldChecked.Checked = false; Checked = true; SetOrder(value); oldChecked = (ToolStripRadioMenuItem <TValue>)o; propertyOwner.InvokePropertyChange(propertyName); }; }