سؤال

لقد كنت أحاول الحصول على تطبيق Silverlight 3 لتغيير حجمه تلقائيًا عند إضافة صفوف إلى بيانات البيانات. لقد حاولتهذا المثاللكنني فقط أحصل على ملف System.ExecutionEngineException مع استثناء داخلي فارغ. أعتقد أن هذا يهدف إلى Silverlight 2 فقط. هل يمكن لأي شخص أن يخبرني كيف أفعل هذا في Silverlight 3؟

أي مساعدة في هذا موضع تقدير كبير.

هل كانت مفيدة؟

المحلول

لقد حصلت على هذا العمل مع ما يلي:

أضف JavaScript التالي إلى الصفحة باستخدام كائن Silverlight الخاص بك:

 function ResizeObject(height) {
        var host = document.getElementById("silverlightControlHost");
        host.style.height = height + "px";
    } 

أضف ما يلي إلى Silverlight CodeBehind:

public MainPage()
    {
        InitializeComponent();
        this.Loaded += new RoutedEventHandler(Page_Loaded);
        this.yourRootElement.LayoutUpdated += new EventHandler(LayoutRoot_LayoutUpdated);
    }

    private void LayoutRoot_LayoutUpdated(object sender, EventArgs e)
    {
        HtmlPage.Window.Invoke("ResizeObject", new object[] { this.yourRootElement.RenderSize.Height });
    }

لاحظ أن "ResizeObject" يشير إلى وظيفة JavaScript على صفحة الويب الخاصة بك.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top