本文整理汇总了C#中System.Windows.Controls.ComboBox.AddHandler方法的典型用法代码示例。如果您正苦于以下问题:C# ComboBox.AddHandler方法的具体用法?C# ComboBox.AddHandler怎么用?C# ComboBox.AddHandler使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类System.Windows.Controls.ComboBox
的用法示例。
在下文中一共展示了ComboBox.AddHandler方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: ComboBoxHintProxy
public ComboBoxHintProxy(ComboBox comboBox)
{
if (comboBox == null) throw new ArgumentNullException(nameof(comboBox));
_comboBox = comboBox;
_comboBoxTextChangedEventHandler = new TextChangedEventHandler(ComboBoxTextChanged);
_comboBox.AddHandler(TextBoxBase.TextChangedEvent, _comboBoxTextChangedEventHandler);
_comboBox.SelectionChanged += ComboBoxSelectionChanged;
_comboBox.Loaded += ComboBoxLoaded;
_comboBox.IsVisibleChanged += ComboBoxIsVisibleChanged;
}
示例2: GetProperyField
public override FrameworkElement GetProperyField()
{
DockPanel sp = new DockPanel();
ComboBox cb = new ComboBox();
cb.IsTextSearchEnabled = true;
cb.IsEditable = true;
comb = cb;
UpdateCombo();
comb.AddHandler(TextBox.TextChangedEvent, new TextChangedEventHandler(delegate { try { Property.SetValue(Object, new BrushConverter().ConvertFrom(null, CultureInfo.CurrentCulture, cb.Text), null); } catch { } }));
Button btn = new Button();
DockPanel.SetDock(btn, Dock.Right);
btn.Content = "...";
btn.Click += new RoutedEventHandler(OpenBrushDialog);
sp.Children.Add(btn);
sp.Children.Add(cb);
return sp;
}
示例3: RowEntity
public RowEntity(int row, Grid grid, Question question, bool textBox = false)
{
Rank = row;
QuestionObject = question;
QuestionLabel = new TextBlock();
QuestionLabel.Text = question.Title;
QuestionLabel.FontSize = 12;
QuestionLabel.Height = 30;
QuestionLabel.FontWeight = FontWeights.Bold;
Grid.SetRow(QuestionLabel, row);
Grid.SetColumn(QuestionLabel, 0);
grid.Children.Add(QuestionLabel);
if (!textBox)
{
AnswerComboBox = new ComboBox();
AnswerComboBox.Height = 25;
AnswerComboBox.Margin = new Thickness(0, 0, 20, 0);
AnswerComboBox.Uid = question.Rank.ToString();
AnswerComboBox.ItemsSource = question.Answers;
int x = 0;
if (question.Default != null)
{
foreach (Answer a in question.Answers)
{
if (question.Default.Title == a.Title)
{
question.Value = a;
AnswerComboBox.SelectedIndex = x;
break;
}
x++;
}
}
else if (question.Answers.Count == 1)
{
AnswerComboBox.SelectedIndex = 0;
question.Value = question.Answers.First();
}
Grid.SetRow(AnswerComboBox, row);
Grid.SetColumn(AnswerComboBox, 1);
grid.Children.Add(AnswerComboBox);
AnswerComboBox.AddHandler(ComboBox.SelectionChangedEvent, new SelectionChangedEventHandler(selectionChange));
}
else
{
TextBox tb = new TextBox();
tb.Height = 25;
tb.Margin = new Thickness(0, 0, 20, 0);
Grid.SetRow(tb, row);
Grid.SetColumn(tb, 1);
grid.Children.Add(tb);
AnswerTextBox = tb;
}
}
示例4: LiveSimulation
//.........这里部分代码省略.........
// Click all the buttons in the group.
foreach (Circuit.IButtonControl j in components.OfType<Circuit.IButtonControl>().Where(x => x.Group == b.Group))
j.Click();
UpdateSimulation(true);
};
button.MouseEnter += (o, e) => button.Opacity = 0.95;
button.MouseLeave += (o, e) => button.Opacity = 0.5;
}
Circuit.Speaker output = i as Circuit.Speaker;
if (output != null)
speakers += output.V;
// Create input controls.
Circuit.Input input = i as Circuit.Input;
if (input != null)
{
tag.ShowText = false;
ComboBox combo = new ComboBox()
{
Width = 80,
Height = 24,
Opacity = 0.5,
IsEditable = true,
SelectedValuePath = "Tag",
};
foreach (InputChannel j in InputChannels)
{
combo.Items.Add(new ComboBoxItem()
{
Tag = j,
Content = j.Name
});
}
Schematic.overlays.Children.Add(combo);
Canvas.SetLeft(combo, Canvas.GetLeft(tag) - combo.Width / 2 + tag.Width / 2);
Canvas.SetTop(combo, Canvas.GetTop(tag) - combo.Height / 2 + tag.Height / 2);
ComputerAlgebra.Expression V = Circuit.Component.DependentVariable(input.Name, Circuit.Component.t);
inputs[V] = new SignalChannel(0);
combo.SelectionChanged += (o, e) =>
{
if (combo.SelectedItem != null)
{
ComboBoxItem it = (ComboBoxItem)combo.SelectedItem;
inputs[V] = new InputChannel(((InputChannel)it.Tag).Index);
}
};
combo.AddHandler(TextBox.KeyDownEvent, new KeyEventHandler((o, e) =>
{
try
{
inputs[V] = new SignalChannel(Circuit.Quantity.Parse(combo.Text, Circuit.Units.V));
}
catch (Exception)
{
// If there is an error in the expression, zero out the signal.
inputs[V] = new SignalChannel(0);
}
}));
if (combo.Items.Count > 0)
combo.SelectedItem = combo.Items[0];
else
combo.Text = "0 V";
combo.MouseEnter += (o, e) => combo.Opacity = 0.95;
combo.MouseLeave += (o, e) => combo.Opacity = 0.5;
}
}
// Create audio output channels.
for (int i = 0; i < Outputs.Length; ++i)
{
OutputChannel c = new OutputChannel(i) { Name = Outputs[i].Name, Signal = speakers };
c.PropertyChanged += (o, e) => { if (e.PropertyName == "Signal") RebuildSolution(); };
OutputChannels.Add(c);
}
// Begin audio processing.
if (Inputs.Any() || Outputs.Any())
stream = Device.Open(ProcessSamples, Inputs, Outputs);
else
stream = new NullStream(ProcessSamples);
ContentRendered += (o, e) => RebuildSolution();
Closed += (s, e) => stream.Stop();
}
catch (Exception Ex)
{
MessageBox.Show(Ex.Message, "Error", MessageBoxButton.OK, MessageBoxImage.Error);
}
}
示例5: RefreshTabContent
/// <summary>
/// 具体刷新Tab内容的方法
/// </summary>
/// <param name="tab"></param>
private void RefreshTabContent(TabItem tab)
{
//logger.Debug("刷新控件ing");
if (tab.Tag == null)
return;
int index = (int)tab.Tag;
var prompts = viewModel.Prompts.Where(it => it.TabIndex == index)
.ToList();
Grid grid = new Grid();
ScrollViewer viewer = new ScrollViewer();
viewer.VerticalScrollBarVisibility = ScrollBarVisibility.Auto;
viewer.Content = grid;
tab.Content = viewer;
grid.RowDefinitions.Add(new RowDefinition() { Height = new GridLength(10) });
grid.RowDefinitions.Add(new RowDefinition() { Height = new GridLength() });
grid.ColumnDefinitions.Add(new ColumnDefinition() { Width = new GridLength(20) });
grid.ColumnDefinitions.Add(new ColumnDefinition() { Width = new GridLength(230) });
grid.ColumnDefinitions.Add(new ColumnDefinition() { Width = new GridLength(220) });
grid.ColumnDefinitions.Add(new ColumnDefinition() { Width = new GridLength(250, GridUnitType.Star) });
StackPanel leftSP = new StackPanel();
leftSP.Margin = new Thickness(5, 0, 30, 0);
leftSP.SetValue(Grid.RowProperty, 1);
leftSP.SetValue(Grid.ColumnProperty, 1);
StackPanel middleSP = new StackPanel();
middleSP.Margin = new Thickness(30, 0, 30, 0);
middleSP.SetValue(Grid.RowProperty, 1);
middleSP.SetValue(Grid.ColumnProperty, 2);
StackPanel rightSP = new StackPanel();
rightSP.Margin = new Thickness(30, 0, 0, 0);
rightSP.SetValue(Grid.RowProperty, 1);
rightSP.SetValue(Grid.ColumnProperty, 3);
grid.Children.Add(leftSP);
grid.Children.Add(middleSP);
grid.Children.Add(rightSP);
for (int i = 0; i < prompts.Count(); i++)
{
var prompt = prompts[i];
if (prompt.ControlType == ControlType.TextBox
|| prompt.ControlType == ControlType.UnEditabledTextBox
|| prompt.ControlType == ControlType.Invisabled)
{
Label label = new Label();
label.Foreground = getBrushById(prompt.ColorIndex);
label.DataContext = prompt;
label.SetBinding(Label.ContentProperty, new Binding("Name"));
label.SetBinding(Label.VisibilityProperty, new Binding("Visible") { Converter = new PromptValueToVisibilityConverter() });
label.SetBinding(Label.ToolTipProperty, new Binding("HelpMessage"));
leftSP.Children.Add(label);
TextBox tb = new TextBox();
//tb.MouseDoubleClick += tb_MouseDoubleClick;
tb.AddHandler(UIElement.MouseEnterEvent, new RoutedEventHandler(tb_MouseLeftButtonDown), true);
tb.DataContext = prompt;
tb.SetBinding(TextBox.TextProperty, new Binding("PromptValue") { ValidatesOnExceptions = true, ValidatesOnDataErrors = true, NotifyOnValidationError = true });
tb.SetBinding(TextBox.VisibilityProperty, new Binding("Visible") { Converter = new PromptValueToVisibilityConverter() });
tb.SetBinding(TextBox.IsEnabledProperty, new Binding("IsEnabled"));
tb.SetBinding(TextBox.ToolTipProperty, new Binding("HelpMessage"));
leftSP.Children.Add(tb);
TextBlock error = new TextBlock();
error.Foreground = Brushes.Red;
error.DataContext = prompt;
error.SetBinding(TextBlock.TextProperty, new Binding("ErrorMessage"));
error.SetBinding(Label.VisibilityProperty, new Binding("ErrorMessage") { Converter = new PromptValueToVisibilityConverter() });
leftSP.Children.Add(error);
}
else if (prompt.ControlType == ControlType.CheckBox)
{
CheckBox cb = new CheckBox();
cb.Foreground = getBrushById(prompt.ColorIndex);
cb.Margin = new Thickness(0, 3, 0, 3);
cb.DataContext = prompt;
cb.AddHandler(UIElement.MouseEnterEvent, new RoutedEventHandler(tb_MouseLeftButtonDown), true);
cb.SetBinding(CheckBox.IsCheckedProperty, new Binding("PromptValue") { Converter = new PromptValueToCheckedConverter() });
cb.SetBinding(CheckBox.ContentProperty, new Binding("Name"));
cb.SetBinding(CheckBox.VisibilityProperty, new Binding("Visible") { Converter = new PromptValueToVisibilityConverter() });
cb.SetBinding(CheckBox.ToolTipProperty, new Binding("HelpMessage"));
rightSP.Children.Add(cb);
}
else if (prompt.ControlType == ControlType.ComboBox)
{
Label label = new Label();
label.Foreground = getBrushById(prompt.ColorIndex);
label.DataContext = prompt;
label.SetBinding(Label.ContentProperty, new Binding("Name"));
label.SetBinding(Label.VisibilityProperty, new Binding("Visible") { Converter = new PromptValueToVisibilityConverter() });
//.........这里部分代码省略.........