Кнопка Silverlight (с Xaml и C #) - PullRequest
0 голосов
/ 02 мая 2011

Test.aspx page:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Test.aspx.cs" Inherits="XMLPraktijkOpdrachtJavascript.Test" %>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
    <head>
        <title>Test</title>
        <script type="text/javascript" src="Javascript/Test.js"></script>
    </head>
    <body>
        <object id="TestPage" width="100%" height="100%" type="application/x-silverlight-2">                
            <param name="source" value="Xaml/Test.xaml"/>               
        </object>                   
    </body>
</html>

Страница Test.xaml:

<?xml version="1.0" encoding="UTF-8"?>
<Grid
  xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"

  Loaded="onLoaded">

    <Button Width="50" Height="50" Name="Test">TEST</Button>

</Grid>

Файл Test.js:

// Event function when page gets loaded
function onLoaded() {
    alert('In TestPage');
}

Без кнопки работает нормально. С кнопкой это не получается. Почему я не могу использовать кнопку в Silverlight? System.Windows.Controls добавлен в проект.

Ответы [ 2 ]

3 голосов
/ 02 мая 2011

Прочитав очень похожий вопрос, который вы задавали до , я не уверен, что вы понимаете фундаментальную разницу между Silverlight 1 и Silverlight 2 или более поздней версии.

Ваш элемент <object> имеет атрибут type="application/silverlight-2", который указывает Silverlight 2 или более позднюю версию. Тем не менее, параметр source указывает файл .xaml, который, как я полагаю, работает в Silverlight 1.

Silverlight 2 и более поздние версии требуют разработки кода Silverlight в отдельном проекте. Эти проекты Silverlight компилируют весь код Silverlight в файл .xap. Затем вы добавляете приложение Silverlight в свой веб-проект, который организует копирование скомпилированного файла .xap в папку ClientBin в вашем веб-проекте. Затем ваш веб-проект может отправить файл .xap в ваш браузер. В Silverlight 1 создается впечатление, что файлы .xaml обслуживаются из вашего веб-проекта.

Является ли ваш проект проектом Silverlight 1 или нет? Если это существующее приложение, есть ли шанс перенести его на более позднюю версию? Если вам не хватает поддержки большого унаследованного приложения Silverlight 1, все, что я могу сказать, - мне очень жаль вас.

Больше нет причин писать новые приложения Silverlight 1. Он принципиально отличается от других версий Silverlight и имеет так много ограничений. В частности, в Silverlight 1 нет Button, так как кто-то уже указал вам в комментарии к вашему предыдущему вопросу. Это может быть причиной ошибки, которую вы видите.

2 голосов
/ 02 мая 2011

вы не можете просто использовать "файл xaml" подобным образом.Вам нужен «проект silverlight», который выводит xap-файл, который вы можете встроить в свою веб-страницу.

Попробуйте создать приложение silverlight, это создаст проект silverilght, предложит и создаст для вас веб-приложение, настройтевеб-приложение для отображения проекта Silverlight и более быстрого запуска;)

Надеюсь, это поможет

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...