Popular Tags:

Code Behind для стиля в WPF

24.02.2014 at 19:29

Часто возникает ситуация, когда нужно добавить обработчик через стиль или шаблон. Для этого нужно объявить partial класс для словаря ресурсов, в котором находится стиль. В этом классе и будут обработчики. Сделать это очень просто. Сначала создадим словарь ресурсов, в котором укажем класс с помощью атрибута «x:Class»:

<ResourceDictionary x:Class="TestApplication.MyDictionary" 
                    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
                    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
  <Style TargetType="{x:Type Button}" x:Key="ButtonStyle">
    <Setter Property="Template">
      <Setter.Value>
        <ControlTemplate TargetType="{x:Type Button}">
          <Border BorderThickness="1" BorderBrush="Black">
            <Label Content="{TemplateBinding Content}" Margin="10" 
                   MouseEnter="MouseEnterHandler" 
                   MouseLeave="MouseLeaveHandler" />
          </Border>
        </ControlTemplate>
      </Setter.Value>
    </Setter>
  </Style>
</ResourceDictionary>

Здесь переопределен шаблон для кнопки. read more

Редактор html и подсветка синтаксиса

11.12.2013 at 19:44

В проекте на MVC4 решил сделать возможность редактировать текст материала в WYSIWYG редакторе, добавить подсветку для программного кода и добавить в редактор поддержку этой подсветки. К счастью, писать самому ничего не пришлось, хватило сторонних решений.

WYSIWYG редактор.

Я использовал TinyMCE. Подключается он очень просто, нужно в .cshtml файл добавить такие строчки:

@Scripts.Render("//code.jquery.com/jquery-1.10.2.min.js")
@Scripts.Render("//tinymce.cachefly.net/4.0/tinymce.min.js")

Хотя можно и добавить эти файлы в проект, это не важно. read more

Линкблог #22

05.12.2013 at 18:51

.Net

GameDev

read more

Импорт записей из WordPress в приложение на ASP.NET MVC 4

07.11.2013 at 19:47

Модель данных

Создадим три сущности — пост, категория и тег. У каждого поста может быть одна категория и несколько тегов.

[Table("Category")]
public class Category
{
  [Key]
  [DatabaseGeneratedAttribute(DatabaseGeneratedOption.Identity)]
  public int CategoryId { get; set; }

  public string Name { get; set; }
}

[Table("Tag")]
public class Tag
{
  [Key]
  [DatabaseGeneratedAttribute(DatabaseGeneratedOption.Identity)]
  public int TagId { get; set; }

  public string Name { get; set; }

  public ICollection<Post> Posts { get; private set; }

  public Tag()
  {
    this.Posts = new List<Post>();
  }
}

[Table("Post")]
public class Post
{
  [Key]
  [DatabaseGeneratedAttribute(DatabaseGeneratedOption.Identity)]
  public int PostId { get; set; }

  public string Title { get; set; }

  [Column(TypeName = "ntext")]
  public string Body { get; set; }

  public Category PostCategory { get; set; }

  public ICollection<Tag> PostTags { get; set; }

  public Post()
  {
    this.PostTags = new List<Tag>();
  }
}

Для доступа к данным создаем контекст

public class PostContext : DbContext
{
  public PostContext() : base("DefaultConnection") { }

  public DbSet<Post> Posts { get; set; }
  public DbSet<Category> Categories { get; set; }
  public DbSet<Tag> Tags { get; set; }
}

Благодаря механизму Code First в Entity Framework, база создастся сама. read more

Линкблог #21

04.10.2013 at 18:54

.Net

GameDev

  • Анонс Unity 4.3. Из плюшек — инструменты для разработки 2D игр и инструмент для встраивания рекламы.
  • GOG собирается заняться изданием игр.
read more

Простая локализация в Unity3d

03.09.2013 at 18:16

Быстрые и простой способ локализации приложения на Unity3D

Определение текущего языка

В unity текущий язык лежит в свойстве Application.systemLanguage. Возвращает оно перечисление, нас будет интересовать только значение SystemLanguage.Russian.

Загрузка ресурсов

Файлы с ресурсами локализации нужно хранить в папке Assets/Resources. Это позволит получать их с помощью метода Resources.Load.

Класс менеджера локализации

Менеджера я решил сделать одиночкой. read more

Поиск пути на Unity3d с помощью библиотеки A* Pathfinding Project

28.08.2013 at 19:17

Я уже писал о реализации алгоритма A*, теперь я хочу поделиться инструкцией по использованию готовой библиотеки на Unity 3D.

Начало работы

  1. Скачиваем бесплатную версию здесь, распаковываем скачанный архив.
  2. Через пункт меню Assets -> Import Package -> Custom Package… импортируем скачанный пакет.
  3. Создаем плоскость, на ней создаем несколько кубов – препятствий, располагаем их на отдельном слое Cubes.
read more

Редактор свойств в Unity

14.08.2013 at 16:40

Несколько способов добавления полей объекта в визуальный редактор.

1. Сделать поля публичными

Создаем класс

public class Weapon : MonoBehaviour {
  public int NormalAmmoDamage;
  public int NormalAmmoRange;
  public int SpecialAmmoDamage;
  public int SpecialAmmoRange;
}

В редакторе он будет выглядеть так:

В редакторе видны публичные поля, подписи к ним берутся из имен полей. read more

Линкблог #20

17.07.2013 at 19:35

.Net

GameDev

  • 50 советов по разработке на Unity3D.
  • Генерация бесконечных неповторяющихся текстур.
  • Интервью с создателями Dwarf Fortress — игры, разработка которой длится уже более 10 лет.
read more

Линкблог #19

01.06.2013 at 11:51

.Net

Программирование

GameDev

  • 51 совет начинающему разработчику игр.
read more