0

我创建了自定义控件(图片上的添加/减去列)并将其放入 DataGrid 控件的 DataGridTemplateColumn:

在此处输入图像描述

<DataGridTextColumn Binding="{Binding Count}" Header="Count" Width="60"/>
            <DataGridTemplateColumn Width="90" Header="Add/Substract">
                <DataGridTemplateColumn.CellTemplate>
                    <DataTemplate>
                        <controls:AddSubtractControl HorizontalAlignment="Center" AddSubtractEvent="AddSubtractClick" />
                    </DataTemplate>
                </DataGridTemplateColumn.CellTemplate>
            </DataGridTemplateColumn>

我的自定义控件的主要任务当然是在“计数”列上的实际值中添加/减去一些值。

当用户单击“添加”按钮时,控件调用一些具有输入值的事件:

private void AddClick(object sender, MouseButtonEventArgs e)
    {
        AddSubstractEvent(int.Parse(countBox.Text), e);
    }

当我单击“添加”或“减去”按钮时,在 AddClick 方法之前,在某些未知情况下,首先调用此控件的构造函数。因此 countBox.Text 具有默认值,在单击“添加”按钮之前未输入。

如何处理这个问题?谢谢你的帮助。

4

1 回答 1

0

由于这是一个控件,它的行为应该像一个控件。例如,一个 Textbox 有一个您要绑定的 Text 依赖属性。

您应该有一个依赖属性,然后您可以将其绑定到该值。也许这应该是一个整数,所以它是整数类型。

在内部。

您的文本框绑定到该 dp。

您的 + 和 - 按钮增加和减少控件 dp 的当前值。

于 2018-12-06T20:03:32.267 回答