Posted on 1. September 2011

Доступен Silverlight 5 RC

silverlight5featuresСегодня стал доступен для загрузки Silverlight 5 Release Candidate версия. Текущая версия предназначена для разработчиков(go-live лицензия отсутствует), что бы у нас было время подготовить наши проекты к выходу финальной версии Silverlight 5, позже в этом году Smile. Используйте этот релиз, что бы подкорректировать соответствующие пространства имен и ссылки на сборки, а также добавить новые возможности.

В эту версию были включены следующие возможности:

  • событие DataContextChanged;
  • поддержка 64х ОС;
  • поддержка P/Invoke;
  • “векторная” печать;
  • доверительный режим внутри браузера;
  • PivotViewer компонент;
  • управление режимом энергосбережения – заключается в отключении заставки во время просмотра видео.

О всех нововведениях в RC версии читайте здесь

Кроме этого было сделано ряд изменений в размещении некоторых пространств имен XNA и файлов. Например некоторые вещи, касающиеся работы с 3D, находятся в разных сборках.

Скачать:



Exception: Object reference not set to an instance of an object.
Posted on 14. April 2011

Silverlight 5: Неявные шаблоны

Одна из новых возможностей Silverlight 5 - это использование неявных шаблонов данных. Уверен – вы уже работали с шаблонами данных при использовании элементов управления ListBox, DataGrid, ComboBox и другими. Шаблоны данных позволяют указать формат/разметку отображения не интерфейсных данных и использовать эту разметку в различных местах нашего приложения.

Неявные шаблоны позволяют формировать разметку, базируясь на типе данных. В более ранних версиях технологии необходимо было указывать ключ шаблона, что бы его использовать в нескольких местах приложения. Используя неявные шаблоны, нам необходимо лишь указать, для какого типа данных необходимо использовать шаблон. И так приступаем от слов к делу.

Создаем новый Silverlight 5 проект.

image

И добавляем несколько типов данных

public class Customer
{
    public string FirstName { get; set; }
    public string LastName { get; set; }
    public string Title { get; set; }
    public string Company { get; set; }
}

public class Employee
{
    public string FirstName { get; set; }
    public string LastName { get; set; }
    public int Room { get; set; }
}

Следующий шаг, добавим несколько шаблонов данных в ресурсы приложения(файл App.xaml)

<Application xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
             x:Class="ImplicitDataTemplate.App"
             xmlns:data="clr-namespace:ImplicitDataTemplate">
    <Application.Resources>
        <DataTemplate DataType="data:Customer">
            <Grid Background="LightSkyBlue">
                <Grid.RowDefinitions>
                    <RowDefinition/>
                    <RowDefinition/>
                </Grid.RowDefinitions>
                <StackPanel Orientation="Horizontal">
                    <TextBlock Text="{Binding FirstName, StringFormat='\{0\} '}"/>
                    <TextBlock Text="{Binding LastName}"/>
                </StackPanel>
                <StackPanel Grid.Row="1">
                    <TextBlock Text="{Binding Title}" FontStyle="Italic"/>
                    <TextBlock Text="{Binding Company, StringFormat='Компания: \{0\}'}" FontWeight="Bold"/>
                </StackPanel>
            </Grid>
        </DataTemplate>
        <DataTemplate DataType="data:Employee">
            <Grid Background="LightGreen" >
                <Grid.RowDefinitions>
                    <RowDefinition/>
                    <RowDefinition/>
                </Grid.RowDefinitions>
                <StackPanel Orientation="Horizontal" HorizontalAlignment="Right">
                    <TextBlock Text="{Binding FirstName, StringFormat='\{0\} '}"/>
                    <TextBlock Text="{Binding LastName}"/>
                </StackPanel>
                <StackPanel Grid.Row="1" Orientation="Horizontal" HorizontalAlignment="Right">
                    <TextBlock Text="{Binding Room, StringFormat='Комната: \{0\}'}" FontStyle="Italic"/>
                </StackPanel>
            </Grid>
        </DataTemplate>
    </Application.Resources>
</Application>

И последний момент, создание тестовых данных в приложении, связывание их с формой

this.DataContext = new List<object>
            {
                new Customer{ FirstName="Иван", LastName="Копаткинский", Company="Топинамбур", Title="Бухгалтер"},
                new Customer{ FirstName="Дмитрий", LastName="Вирутон", Company="Пальма туриста", Title="Менеджер"},
                new Employee{ FirstName="Павел", LastName="Уловинко", Room=101}
            };

и добавление компонента ListBox для отображения списка данных

<Grid x:Name="LayoutRoot" Background="White">
        <ListBox ItemsSource="{Binding}"/>
    </Grid>

Теперь нажимаем F5 и любуемся нашим результатом работы Smile

image

Скачать пример:



Exception: Object reference not set to an instance of an object.
Posted on 13. April 2011

Доступен Silverlight 5 Beta

imageКак и обещали, получаем первую публичную версию Silverlight 5 Beta. Пока еще не все анонсированные возможности реализованы, но пробовать уже сделаное и оставить свой отзыв можно. И так, из реализованного в текущей версии:

  • улучшения в связывании данных(отладка, связывание в стилях, связывание по типу, выбор шаблона в зависимости от типа данных и др.);
  • возможности работы с 3D графикой;
  • счетчик кликов в обработчиках xxxMouseUp и xxxMouseDown;
  • SoundEffect;
  • Улучшения в отображении текста и работе с ним;
  • изменение скорости воспроизведения медиа контента;
  • возможность создания пользовательской разметки;
  • декодирование видео H.264 на ресурсах видео карты;
  • полная поддержка клавиатуры в полноэкранном режиме;
  • ряд улучшение в оптимизации работы приложений;
  • возможность использование виндовс окон при работе в доверительном режиме;
  • использование возможностей доверительного режима в приложении в браузере(через конфигурацию групповых политик);
  • улучшения в сетевом взаимодействии с сервером;

Более детально об использовании новых возможностей читайте в следующих постах.

Другие ресурсы для загрузки:



Exception: Object reference not set to an instance of an object.
Posted on 6. April 2011

Материалы конференции “Дни разработчиков–Весна 2011”

Как обещал – выкладываю материалы мероприятия.















Плюс, немного фотографий Севастополя (только здесь у меня было свободное время Smile )

Дни разработчика 2011 Весна

Дни разработчика 2011 Весна

Дни разработчика 2011 Весна

Дни разработчика 2011 Весна

Дни разработчика 2011 Весна

Дни разработчика 2011 Весна

Дни разработчика 2011 Весна



Exception: Object reference not set to an instance of an object.