Question

J'ai essayé d'obtenir une application Silverlight 3 pour redimensionner automatiquement lorsque des lignes sont ajoutées à datagrids. J'ai essayé cet exemple mais je reçois juste un System.ExecutionEngineException avec une exception interne nulle. Je pense que cela vise à Silverlight 2 uniquement. Quelqu'un peut-il me dire comment faire dans Silverlight 3?

Toute aide sur ce serait très apprécié.

Était-ce utile?

La solution

J'ai eu ce travail avec les éléments suivants:

Ajoutez le code JavaScript suivant à la page avec votre objet silverlight:

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

Ajoutez ce qui suit à votre 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 });
    }

Notez que "ResizeObject" fait référence à la fonction javascript sur votre page Web.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top