【问题标题】:User Control Buttons Not Firing用户控制按钮未触发
【发布时间】:2014-01-23 20:01:55
【问题描述】:

我有一个用户控件,允许用户添加/编辑工作人员。当用户单击“添加工作人员”按钮时,用户控件将出现在DevExpress 弹出窗口中。以下所有按钮都在更新面板中以防止Postbacks

当我编辑用户(铅笔)时,一切正常。要编辑用户,我输入姓氏,单击搜索(放大镜),然后单击编辑(铅笔)。只有当我加载页面并单击添加保存/取消按钮时才起作用。

我在asp.net中添加控件

<dx:PopupControlContentControl ID="PopupControlContentControl2" runat="server" SupportsDisabledAttribute="True">               
           <uc:WorkerAddEdit ID="wae" runat="server" OnOnWAECancelEvent="wae_OnWAECancelEvent" OnOnWAESaveEvent="wae_OnWAESaveEvent" />
</dx:PopupControlContentControl>

这是编辑后的 ​​C# 代码(正确工作的那个。铅笔)

protected void btnEditWorker_Click(object sender, EventArgs e)
{
    SetupSessions();
    wae.WorkerEdit = loadedWorker;
    pucAddEditWorker.HeaderText = "Edit Worker";
    pucAddEditWorker.ShowOnPageLoad = true;
}

这是 add 背后的 C# 代码(圆形 + 不起作用)

protected void btnAddWorker_Click(object sender, EventArgs e)
{
    wae.WorkerEdit = null;
    pucAddEditWorker.HeaderText = "Add Worker";
    pucAddEditWorker.ShowOnPageLoad = true;
}

这是保存和取消按钮的 asp.net 部分。这显示了两个 onClick 调用

<td><dx:ASPxButton ID="btnSave" runat="server" Text="Save" Theme="MetropolisBlue" 
                        Width="50px" Height="20px" style="float:right;" onclick="btnSave_Click" /></td>
<td><dx:ASPxButton ID="btnCancel" runat="server" Text="Cancel" 
                        Theme="MetropolisBlue" Width="50px" Height="20px" style="float:right;" 
                        onclick="btnCancel_Click" /></td>

这是后面代码中的事件

protected void btnCancel_Click(object sender, EventArgs e)
{
    //Do Work Here
}
protected void btnSave_Click(object sender, EventArgs e)
{
    // Do Work Here
}

如果我在保存或取消单击事件上设置断点,则不会发生任何事情。我已经在谷歌上搜索了一段时间,但没有运气。

提前致谢。

【问题讨论】:

  • 我理解正确吗?保存按钮一直有效,直到您单击添加?
  • 调试时是否触发事件?意思是,您是否能够在保存事件中设置一个断点并运行您的步骤并让它到达断点?
  • 单击添加时,保存按钮和取消按钮不起作用。调试时不会触发事件。当我设置断点并运行时,什么也没有发生。
  • 你的保存点击方法在哪里?你在哪里分配它的事件处理程序?
  • 我编辑了我的问题并插入了您正在寻找的方法和其他代码。

标签: c# asp.net devexpress


【解决方案1】:

在表单的设计模式下,您是否尝试过单击一次控件,然后在属性(事件)窗口中进行检查?可能 Click 事件没有选择任何方法。

在 Click 标签中选择 btnSave_Click 方法。

【讨论】:

  • 感谢您的建议!当我查看时,它显示为点击事件。我刚刚弄清楚问题出在哪里......我现在要关闭它。再次感谢您的帮助。
【解决方案2】:

我发现了问题所在。我正在使用 DevExpress 的文本框。在我的代码中,我的文本框如下:

<dx:ASPxTextBox ID="txtPhoneNumber" runat="server" Width="100px" Theme="MetropolisBlue" >
    <MaskSettings Mask="(999) 000-0000" IncludeLiterals="None" />
    <ValidationSettings Display="None">
    </ValidationSettings>
</dx:ASPxTextBox>

因为我在掩码中有 0,所以它试图验证文本框中的任何内容。因为我关闭了验证设置(ValidationSettings Display="None"),所以我从未看到错误,但它仍在验证中。我对此进行了更改:

<dx:ASPxTextBox ID="txtPhoneNumber" runat="server" Width="100px" Theme="MetropolisBlue">
    <MaskSettings Mask="(999) 999-9999" IncludeLiterals="None" />
    <ValidationSettings Display="None">
    </ValidationSettings>
</dx:ASPxTextBox>

一切正常。我刚开始使用 DevExpress,它显示了!感谢大家的帮助!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-12-14
    • 1970-01-01
    • 1970-01-01
    • 2012-04-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多