小编edo*_*rwi的帖子

AngularJS与ASP.NET Updatepanel部分更新

我是AngularJS的新手,所以这可能是一个微不足道的问题.

我面临的问题是,只要有更新面板部分更新,AngularJS绑定{{Object.Field}}就会恢复为未格式化状态.我知道更新面板正在用非格式化文本({{Object.Field}})替换DOM,但是我无法使角度重新评估由更新面板注入的HTML片段.

到目前为止我尝试过的:

  • 从更新面板的End_Request获取控制器范围的句柄,并将更新函数包装在$ scope.apply()内的控制器上;
  • 在同一位置和控制器内部调用$ scope.compile,没有结果更改.
  • 尝试用指令代替,但我不认为这是我想要的.

我可以获得控制器内部DOM的句柄并直接更改它,但我知道这不是推荐的方法,因此我在这里问这个问题.

如何使角度重新评估HTML片段,由asp.net更新面板的部分更新替换/注入?

asp.net updatepanel angularjs

8
推荐指数
1
解决办法
4656
查看次数

UserControl开关

有两种不同的UserControl共享一些常见的属性.我想做的是根据外部标志在这两者之间切换.

UserControl u1, u2;

if(flag)
{
    u1 = u1 as ControlType1;
    u2 = u2 as ControlType1;
}
else
{
    u1 = u1 as ControlType2;
    u2 = u2 as ControlType2;
}

SomeMethod(u1.SelectedItemName, u2.SelectedItemName);
Run Code Online (Sandbox Code Playgroud)

由于UserControl没有名为"SelectedItemName"的属性,因此代码不会抛出错误.

我已经做过目前是,我已经添加上用户控件的扩展方法,其得到"SelectedItemName"使用反射,我也得到通过调用u1.SelectedItemName(值),而不是u1.SelectedItemName;

我的问题是什么是一种简单的方法来解决这个问题,而不使用扩展/也许是正确的方法.请注意,我不想在if语句中重复SomeMethod(a,b).

c# user-controls

3
推荐指数
1
解决办法
344
查看次数

标签 统计

angularjs ×1

asp.net ×1

c# ×1

updatepanel ×1

user-controls ×1