我正在使用网格行使用HtmlPage.Window.Navigate(Uri, "_blank");
启动一个窗口,使用上下文菜单进行特定于该行引用的页面的某些自定义编辑。我在银光中使用telerik-grid。我想在用户关闭该窗口时刷新网格。我怎么能这样做?
请分享一些想法,这可能吗?或者在哪里寻找开始解决这个问题?
更新:我使用的是Silver-light MVVM 模型。我从银光开启的子窗口是Web浏览器,我实际上需要一种技术,我可以在银灯应用程序中使用网格,以便在关闭Web浏览器时刷新。另外,我使用 RIA服务来公开Web浏览器的方法。
答案 0 :(得分:2)
在您的Silverlight应用中公开可从Javascript访问的方法。
namespace SilverlightApplication
{
public partial class Page : UserControl
{
public Page()
{
InitializeComponent();
HtmlPage.RegisterScriptableObject("Page", this);
}
[ScriptableMember]
public void UpdateDataGrid()
{
myDataGridItemsReload(); // your routine
}
}
}
然后在新打开的窗口中,您可以在Silverlight实例上执行方法
<script>
window.onunload = refreshParentGrid;
function refreshParentGrid() {
var hostDiv = window.opener.document.getElementById("silverlightControlHost");
var control = hostDiv.children[0];
control.Content.Page.UpdateDataGrid();
}
</script>