使用ScriptableMember进行MainPage验证

时间:2012-04-11 00:19:00

标签: c# silverlight silverlight-4.0

我正在使用this tutorial中教授的概念与我的Silverlight应用程序之间的Javascript进行通信。我希望JavaScript代码检查是否填写了HTML端的所有表单字段,如果是,请在MainPage中运行方法。

问题是此技术返回对ScriptableClass对象的响应,而不是MainPage。有谁知道ScriptableObject如何调用MainClass中的方法。也许在ScriptableClass对象中使用MainClass中的事件?

public class ScriptableClass
{
    [ScriptableMember]
    public void gotdetails(string message)
    {
        if (message == "1")
        {
            // call next method in MainPage
        }
        if (message == "0")
        {
            // tell user to complete fields
        }
    }
}

1 个答案:

答案 0 :(得分:1)

一个解决方案是将“gotdetails”方法移动到MainClass并将此MainClass注册为ScriptableObject,我的意思是你根本不需要ScriptableClass。

第二个选项,如果你想保留ScriptableClass,则在ScriptableClass中创建静态事件并在MainClass中订阅此事件。使用静态事件,您无需从MainClass实例访问ScriptableCalss实例。

MSDN也有关于javascript和Silverlight通信的良好walthrough