Skip to content

Instantly share code, notes, and snippets.

View yuka1984's full-sized avatar

Yuka=San yuka1984

  • http://www.sigmact.com/
  • Tokyo Japan
View GitHub Profile
@yuka1984
yuka1984 / file0.cs
Created July 20, 2015 01:11
等倍でウィンドウサイズを変更するように強制する。 ref: http://qiita.com/yu_ka1984/items/b4a3ce9ed7750bd67b86
public partial class WindowEx : Window
{
[StructLayout(LayoutKind.Sequential)]
public struct RECT
{
public int left;
public int top;
public int right;
public int bottom;
@yuka1984
yuka1984 / file0.cs
Created July 25, 2015 05:22
C#でstructをバイト配列に変換する拡張メソッド ref: http://qiita.com/yu_ka1984/items/969728290b05e15f07a9
public static byte[] ToByteArray<T>(this T structure) where T : struct
{
byte[] bb = new byte[Marshal.SizeOf(typeof(T))];
GCHandle gch = GCHandle.Alloc(bb, GCHandleType.Pinned);
Marshal.StructureToPtr(structure, gch.AddrOfPinnedObject(), false);
gch.Free();
return bb;
}
@yuka1984
yuka1984 / file0.cs
Last active August 29, 2015 14:26
WPFでWindowとかUserControlエレメントでStaticResourceを呼ぶとエラーになった ref: http://qiita.com/yu_ka1984/items/e77c4c03375435bf613c
public class MainVM : BindableBase
{
private string _Title;
public string Titile
{
get { return _Title; }
set { SetProperty(ref _Title, value); }
}
private bool _IsVisible;
@yuka1984
yuka1984 / file0.cs
Created September 26, 2015 04:28
P/Invoke使わないで モニタハンドラを取得してみた ref: http://qiita.com/yu_ka1984/items/4a0439d421593c763fc4
var monitorfield = typeof(System.Windows.Forms.Screen).GetTypeInfo().DeclaredFields.Single(x => x.Name == "hmonitor");
var Screens = System.Windows.Forms.Screen.AllScreens.Select(x => new {
Screen = x,
hmonitor = (IntPtr)monitorfield.GetValue(x) });
@yuka1984
yuka1984 / file0.cs
Created October 14, 2015 03:49
マルチスレッドで複数のコレクション操作を排他制御して処理したかった ref: http://qiita.com/yu_ka1984/items/3090725fdc202657c90f
public class TransactionDispatchObservableCollection<T> : ObservableCollection<T>
{
/// <summary>
/// コレクションディスパッチャー
/// </summary>
public Dispatcher Dispatch { get; set; }
public DispatcherPriority Priority { get; set; } = DispatcherPriority.Background;
@yuka1984
yuka1984 / file0.cs
Last active October 31, 2016 12:17
PetaPoco使いやすいよ。 ref: http://qiita.com/yu_ka1984/items/b59aafe078b53f278619
var sql = PetaPoco.Sql.Builder
.Select("HG.*")
.From("HOGE HG");
.Where("HG.id = @0", 5)
.Where("HG.name = @Name" new { Name = "hogehoge" } );
@yuka1984
yuka1984 / file0.xml
Last active November 11, 2015 16:43
MaterialDesignInXAMLToolkitのDialogでコマンドのバインディングが外れてしまう ref: http://qiita.com/yu_ka1984/items/4b42872d751fe5522e5d
<Button Command="{x:Static wpf:DialogHost.OpenDialogCommand}" HorizontalAlignment="Right" Margin="5,5,30,5" DockPanel.Dock="Bottom" Style="{StaticResource MaterialDesignFloatingActionAccentButton}">
<Button.CommandParameter>
<StackPanel Margin="16">
<TextBlock>保存しますか?</TextBlock>
<StackPanel Orientation="Horizontal" HorizontalAlignment="Right" >
<Button Style="{StaticResource MaterialDesignFlatButton}"
IsDefault="True"
Margin="0 8 8 0"
Command="{Binding SaveCommand}" CommandParameter="{Binding Model}">
保存
@yuka1984
yuka1984 / BitConverterExtension.cs
Created November 11, 2015 16:13
BitConverterExtentionMethod
namespace BitConverterExtention
{
public static class BitConverterExtention
{
public static byte[] ToBytes(this char value)
{
return BitConverter.GetBytes(value);
}
public static byte[] ToBytes(this bool value)
public class TimeService
{
/// <summary>
// 現在時刻を取得します。
/// </summary>
/// <returns></returns>
public async Task<DateTime> GetNow()
{
try
@yuka1984
yuka1984 / file0.cs
Last active March 12, 2016 17:09
キヨシチェックをC#とReavtiveExtentionsで書いてみた。 ref: http://qiita.com/yu_ka1984/items/220dae1be549b9d25aee
using System;
using System.Linq;
using System.Reactive.Concurrency;
using System.Reactive.Linq;
namespace Zundoko
{
internal class Program
{
private const string Zun = "ズン";