amki
6 years ago
12 changed files with 718 additions and 0 deletions
@ -0,0 +1,25 @@ |
|||||
|
|
||||
|
Microsoft Visual Studio Solution File, Format Version 12.00 |
||||
|
# Visual Studio Version 16 |
||||
|
VisualStudioVersion = 16.0.28729.10 |
||||
|
MinimumVisualStudioVersion = 10.0.40219.1 |
||||
|
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "STDHelper", "STDHelper\STDHelper.csproj", "{C763D8F1-B426-4E05-AA56-D1054D36392E}" |
||||
|
EndProject |
||||
|
Global |
||||
|
GlobalSection(SolutionConfigurationPlatforms) = preSolution |
||||
|
Debug|Any CPU = Debug|Any CPU |
||||
|
Release|Any CPU = Release|Any CPU |
||||
|
EndGlobalSection |
||||
|
GlobalSection(ProjectConfigurationPlatforms) = postSolution |
||||
|
{C763D8F1-B426-4E05-AA56-D1054D36392E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU |
||||
|
{C763D8F1-B426-4E05-AA56-D1054D36392E}.Debug|Any CPU.Build.0 = Debug|Any CPU |
||||
|
{C763D8F1-B426-4E05-AA56-D1054D36392E}.Release|Any CPU.ActiveCfg = Release|Any CPU |
||||
|
{C763D8F1-B426-4E05-AA56-D1054D36392E}.Release|Any CPU.Build.0 = Release|Any CPU |
||||
|
EndGlobalSection |
||||
|
GlobalSection(SolutionProperties) = preSolution |
||||
|
HideSolutionNode = FALSE |
||||
|
EndGlobalSection |
||||
|
GlobalSection(ExtensibilityGlobals) = postSolution |
||||
|
SolutionGuid = {CB2EB343-8371-4257-B2DA-5B7CE447F5E1} |
||||
|
EndGlobalSection |
||||
|
EndGlobal |
@ -0,0 +1,6 @@ |
|||||
|
<?xml version="1.0" encoding="utf-8" ?> |
||||
|
<configuration> |
||||
|
<startup> |
||||
|
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7.2" /> |
||||
|
</startup> |
||||
|
</configuration> |
@ -0,0 +1,9 @@ |
|||||
|
<Application x:Class="STDHelper.App" |
||||
|
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" |
||||
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" |
||||
|
xmlns:local="clr-namespace:STDHelper" |
||||
|
StartupUri="MainWindow.xaml"> |
||||
|
<Application.Resources> |
||||
|
|
||||
|
</Application.Resources> |
||||
|
</Application> |
@ -0,0 +1,17 @@ |
|||||
|
using System; |
||||
|
using System.Collections.Generic; |
||||
|
using System.Configuration; |
||||
|
using System.Data; |
||||
|
using System.Linq; |
||||
|
using System.Threading.Tasks; |
||||
|
using System.Windows; |
||||
|
|
||||
|
namespace STDHelper |
||||
|
{ |
||||
|
/// <summary>
|
||||
|
/// Interaktionslogik für "App.xaml"
|
||||
|
/// </summary>
|
||||
|
public partial class App : Application |
||||
|
{ |
||||
|
} |
||||
|
} |
@ -0,0 +1,15 @@ |
|||||
|
<Window x:Class="STDHelper.MainWindow" |
||||
|
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" |
||||
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" |
||||
|
xmlns:d="http://schemas.microsoft.com/expression/blend/2008" |
||||
|
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" |
||||
|
xmlns:local="clr-namespace:STDHelper" |
||||
|
mc:Ignorable="d" |
||||
|
Title="MainWindow" Height="800" Width="1500"> |
||||
|
<Canvas HorizontalAlignment="Left" Height="800" Margin="0,0,0,0" VerticalAlignment="Top" Width="1500"> |
||||
|
<Image x:Name="image1" Stretch="None" Height="500" Canvas.Left="130" Canvas.Top="10" Width="500" local:DraggableExtender.CanDrag="True"/> |
||||
|
<Button x:Name="btn_LoadScreenshot" Content="Load Screenshot" Canvas.Left="10" Canvas.Top="10" Width="75" Click="Btn_LoadScreenshot_Click"/> |
||||
|
<Image x:Name="image2" Stretch="None" Height="500" Canvas.Left="850" Canvas.Top="140" Width="500" local:DraggableExtender.CanDrag="True"/> |
||||
|
<Button x:Name="btn_Switch" Content="Toggle Switch" Canvas.Left="10" Canvas.Top="60" Width="75" Click="Btn_Switch_Click"/> |
||||
|
</Canvas> |
||||
|
</Window> |
@ -0,0 +1,225 @@ |
|||||
|
using System; |
||||
|
using System.Diagnostics; |
||||
|
using System.Windows; |
||||
|
using System.Windows.Controls; |
||||
|
using System.Windows.Input; |
||||
|
using System.Windows.Media.Imaging; |
||||
|
using System.Windows.Threading; |
||||
|
using System.Drawing; |
||||
|
using System.Windows.Forms; |
||||
|
using System.Windows.Interop; |
||||
|
using System.Linq; |
||||
|
|
||||
|
namespace STDHelper |
||||
|
{ |
||||
|
/// <summary>
|
||||
|
/// Interaktionslogik für MainWindow.xaml
|
||||
|
/// </summary>
|
||||
|
public partial class MainWindow : Window |
||||
|
{ |
||||
|
private DispatcherTimer t; |
||||
|
public MainWindow() |
||||
|
{ |
||||
|
InitializeComponent(); |
||||
|
t = new DispatcherTimer(); |
||||
|
// Hook up the Elapsed event for the timer.
|
||||
|
t.Tick += new EventHandler(OnTimedEvent); |
||||
|
t.Interval = new TimeSpan(0, 0, 1); |
||||
|
} |
||||
|
|
||||
|
private void Btn_Load1_Click(object sender, RoutedEventArgs e) |
||||
|
{ |
||||
|
System.Windows.Controls.Image i = FindName("image1") as System.Windows.Controls.Image; |
||||
|
LoadClipboardToImage(i); |
||||
|
} |
||||
|
|
||||
|
private void LoadClipboardToImage(System.Windows.Controls.Image img) |
||||
|
{ |
||||
|
BitmapSource bms = CopyScreen(); |
||||
|
img.Opacity = 0.5; |
||||
|
img.Source = bms; |
||||
|
} |
||||
|
|
||||
|
private void Btn_Load2_Click(object sender, RoutedEventArgs e) |
||||
|
{ |
||||
|
System.Windows.Controls.Image i = FindName("image2") as System.Windows.Controls.Image; |
||||
|
LoadClipboardToImage(i); |
||||
|
} |
||||
|
|
||||
|
private void Btn_Switch_Click(object sender, RoutedEventArgs e) |
||||
|
{ |
||||
|
System.Windows.Controls.Image i1 = FindName("image1") as System.Windows.Controls.Image; |
||||
|
System.Windows.Controls.Image i2 = FindName("image2") as System.Windows.Controls.Image; |
||||
|
if (t.IsEnabled) |
||||
|
{ |
||||
|
t.Stop(); |
||||
|
i1.Visibility = Visibility.Visible; |
||||
|
i1.Opacity = 0.5; |
||||
|
i2.Visibility = Visibility.Visible; |
||||
|
i2.Opacity = 0.5; |
||||
|
} |
||||
|
else |
||||
|
{ |
||||
|
i1.Opacity = 1; |
||||
|
i2.Opacity = 1; |
||||
|
t.Start(); |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
private void OnTimedEvent(object sender, EventArgs e) |
||||
|
{ |
||||
|
Debug.WriteLine("TICK"); |
||||
|
System.Windows.Controls.Image i1 = FindName("image1") as System.Windows.Controls.Image; |
||||
|
System.Windows.Controls.Image i2 = FindName("image2") as System.Windows.Controls.Image; |
||||
|
Debug.WriteLine("i1 " + i1.Visibility); |
||||
|
Debug.WriteLine("i2 " + i2.Visibility); |
||||
|
if (i1.Visibility == Visibility.Hidden) |
||||
|
{ |
||||
|
i1.Visibility = Visibility.Visible; |
||||
|
i2.Visibility = Visibility.Hidden; |
||||
|
} else |
||||
|
{ |
||||
|
i1.Visibility = Visibility.Hidden; |
||||
|
i2.Visibility = Visibility.Visible; |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
private void Btn_LoadScreenshot_Click(object sender, RoutedEventArgs e) |
||||
|
{ |
||||
|
System.Windows.Controls.Image i = FindName("image1") as System.Windows.Controls.Image; |
||||
|
LoadClipboardToImage(i); |
||||
|
} |
||||
|
|
||||
|
private static BitmapSource CopyScreen() |
||||
|
{ |
||||
|
var left = Screen.AllScreens.Min(screen => screen.Bounds.X); |
||||
|
var top = Screen.AllScreens.Min(screen => screen.Bounds.Y); |
||||
|
var right = Screen.AllScreens.Max(screen => screen.Bounds.X + screen.Bounds.Width); |
||||
|
var bottom = Screen.AllScreens.Max(screen => screen.Bounds.Y + screen.Bounds.Height); |
||||
|
var width = right - left; |
||||
|
var height = bottom - top; |
||||
|
|
||||
|
using (var screenBmp = new Bitmap(width, height, System.Drawing.Imaging.PixelFormat.Format32bppArgb)) |
||||
|
{ |
||||
|
using (var bmpGraphics = Graphics.FromImage(screenBmp)) |
||||
|
{ |
||||
|
bmpGraphics.CopyFromScreen(left, top, 0, 0, new System.Drawing.Size(width, height)); |
||||
|
return Imaging.CreateBitmapSourceFromHBitmap( |
||||
|
screenBmp.GetHbitmap(), |
||||
|
IntPtr.Zero, |
||||
|
Int32Rect.Empty, |
||||
|
BitmapSizeOptions.FromEmptyOptions()); |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
public class DraggableExtender : DependencyObject |
||||
|
{ |
||||
|
// This is the dependency property we're exposing - we'll
|
||||
|
// access this as DraggableExtender.CanDrag="true"/"false"
|
||||
|
public static readonly DependencyProperty CanDragProperty = |
||||
|
DependencyProperty.RegisterAttached("CanDrag", |
||||
|
typeof(bool), |
||||
|
typeof(DraggableExtender), |
||||
|
new UIPropertyMetadata(false, OnChangeCanDragProperty)); |
||||
|
|
||||
|
// The expected static setter
|
||||
|
public static void SetCanDrag(UIElement element, bool o) |
||||
|
{ |
||||
|
element.SetValue(CanDragProperty, o); |
||||
|
} |
||||
|
|
||||
|
// the expected static getter
|
||||
|
public static bool GetCanDrag(UIElement element) |
||||
|
{ |
||||
|
return (bool)element.GetValue(CanDragProperty); |
||||
|
} |
||||
|
|
||||
|
// This is triggered when the CanDrag property is set. We'll
|
||||
|
// simply check the element is a UI element and that it is
|
||||
|
// within a canvas. If it is, we'll hook into the mouse events
|
||||
|
private static void OnChangeCanDragProperty(DependencyObject d, |
||||
|
DependencyPropertyChangedEventArgs e) |
||||
|
{ |
||||
|
UIElement element = d as UIElement; |
||||
|
if (element == null) return; |
||||
|
|
||||
|
if (e.NewValue != e.OldValue) |
||||
|
{ |
||||
|
if ((bool)e.NewValue) |
||||
|
{ |
||||
|
element.PreviewMouseDown += element_PreviewMouseDown; |
||||
|
element.PreviewMouseUp += element_PreviewMouseUp; |
||||
|
element.PreviewMouseMove += element_PreviewMouseMove; |
||||
|
} |
||||
|
else |
||||
|
{ |
||||
|
element.PreviewMouseDown -= element_PreviewMouseDown; |
||||
|
element.PreviewMouseUp -= element_PreviewMouseUp; |
||||
|
element.PreviewMouseMove -= element_PreviewMouseMove; |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
// Determine if we're presently dragging
|
||||
|
private static bool _isDragging = false; |
||||
|
// The offset from the top, left of the item being dragged
|
||||
|
// and the original mouse down
|
||||
|
private static System.Windows.Point _offset; |
||||
|
|
||||
|
// This is triggered when the mouse button is pressed
|
||||
|
// on the element being hooked
|
||||
|
static void element_PreviewMouseDown(object sender, |
||||
|
System.Windows.Input.MouseButtonEventArgs e) |
||||
|
{ |
||||
|
|
||||
|
// Ensure it's a framework element as we'll need to
|
||||
|
// get access to the visual tree
|
||||
|
FrameworkElement element = sender as FrameworkElement; |
||||
|
Debug.WriteLine("MOUSEDOWN "+element.Name+" drg is "+_isDragging); |
||||
|
if (element == null) return; |
||||
|
|
||||
|
// start dragging and get the offset of the mouse
|
||||
|
// relative to the element
|
||||
|
_isDragging = true; |
||||
|
_offset = e.GetPosition(element); |
||||
|
} |
||||
|
|
||||
|
// This is triggered when the mouse is moved over the element
|
||||
|
private static void element_PreviewMouseMove(object sender, |
||||
|
System.Windows.Input.MouseEventArgs e) |
||||
|
{ |
||||
|
FrameworkElement element = sender as FrameworkElement; |
||||
|
Debug.WriteLine("MMOVE " + element.Name + " drg is " + _isDragging); |
||||
|
// If we're not dragging, don't bother - also validate the element
|
||||
|
if (!_isDragging) return; |
||||
|
|
||||
|
Debug.WriteLine("DRAGGING " + element.Name + " drg is " + _isDragging); |
||||
|
|
||||
|
if (element == null) return; |
||||
|
|
||||
|
var canvas = element.Parent as Canvas; |
||||
|
if (canvas == null) return; |
||||
|
|
||||
|
// Get the position of the mouse relative to the canvas
|
||||
|
System.Windows.Point mousePoint = e.GetPosition(canvas); |
||||
|
|
||||
|
// Offset the mouse position by the original offset position
|
||||
|
mousePoint.Offset(-_offset.X, -_offset.Y); |
||||
|
|
||||
|
// Move the element on the canvas
|
||||
|
element.SetValue(Canvas.LeftProperty, mousePoint.X); |
||||
|
element.SetValue(Canvas.TopProperty, mousePoint.Y); |
||||
|
} |
||||
|
|
||||
|
// this is triggered when the mouse is released
|
||||
|
private static void element_PreviewMouseUp(object sender, |
||||
|
MouseButtonEventArgs e) |
||||
|
{ |
||||
|
_isDragging = false; |
||||
|
_offset = new System.Windows.Point(); |
||||
|
} |
||||
|
|
||||
|
} |
||||
|
} |
@ -0,0 +1,55 @@ |
|||||
|
using System.Reflection; |
||||
|
using System.Resources; |
||||
|
using System.Runtime.CompilerServices; |
||||
|
using System.Runtime.InteropServices; |
||||
|
using System.Windows; |
||||
|
|
||||
|
// Allgemeine Informationen über eine Assembly werden über die folgenden
|
||||
|
// Attribute gesteuert. Ändern Sie diese Attributwerte, um die Informationen zu ändern,
|
||||
|
// die einer Assembly zugeordnet sind.
|
||||
|
[assembly: AssemblyTitle("STDHelper")] |
||||
|
[assembly: AssemblyDescription("")] |
||||
|
[assembly: AssemblyConfiguration("")] |
||||
|
[assembly: AssemblyCompany("")] |
||||
|
[assembly: AssemblyProduct("STDHelper")] |
||||
|
[assembly: AssemblyCopyright("Copyright © 2019")] |
||||
|
[assembly: AssemblyTrademark("")] |
||||
|
[assembly: AssemblyCulture("")] |
||||
|
|
||||
|
// Durch Festlegen von ComVisible auf FALSE werden die Typen in dieser Assembly
|
||||
|
// für COM-Komponenten unsichtbar. Wenn Sie auf einen Typ in dieser Assembly von
|
||||
|
// COM aus zugreifen müssen, sollten Sie das ComVisible-Attribut für diesen Typ auf "True" festlegen.
|
||||
|
[assembly: ComVisible(false)] |
||||
|
|
||||
|
//Um mit dem Erstellen lokalisierbarer Anwendungen zu beginnen, legen Sie
|
||||
|
//<UICulture>ImCodeVerwendeteKultur</UICulture> in der .csproj-Datei
|
||||
|
//in einer <PropertyGroup> fest. Wenn Sie in den Quelldateien beispielsweise Deutsch
|
||||
|
//(Deutschland) verwenden, legen Sie <UICulture> auf \"de-DE\" fest. Heben Sie dann die Auskommentierung
|
||||
|
//des nachstehenden NeutralResourceLanguage-Attributs auf. Aktualisieren Sie "en-US" in der nachstehenden Zeile,
|
||||
|
//sodass es mit der UICulture-Einstellung in der Projektdatei übereinstimmt.
|
||||
|
|
||||
|
//[assembly: NeutralResourcesLanguage("en-US", UltimateResourceFallbackLocation.Satellite)]
|
||||
|
|
||||
|
|
||||
|
[assembly: ThemeInfo( |
||||
|
ResourceDictionaryLocation.None, //Speicherort der designspezifischen Ressourcenwörterbücher
|
||||
|
//(wird verwendet, wenn eine Ressource auf der Seite nicht gefunden wird,
|
||||
|
// oder in den Anwendungsressourcen-Wörterbüchern nicht gefunden werden kann.)
|
||||
|
ResourceDictionaryLocation.SourceAssembly //Speicherort des generischen Ressourcenwörterbuchs
|
||||
|
//(wird verwendet, wenn eine Ressource auf der Seite nicht gefunden wird,
|
||||
|
// designspezifischen Ressourcenwörterbuch nicht gefunden werden kann.)
|
||||
|
)] |
||||
|
|
||||
|
|
||||
|
// Versionsinformationen für eine Assembly bestehen aus den folgenden vier Werten:
|
||||
|
//
|
||||
|
// Hauptversion
|
||||
|
// Nebenversion
|
||||
|
// Buildnummer
|
||||
|
// Revision
|
||||
|
//
|
||||
|
// Sie können alle Werte angeben oder Standardwerte für die Build- und Revisionsnummern verwenden,
|
||||
|
// indem Sie "*" wie unten gezeigt eingeben:
|
||||
|
// [assembly: AssemblyVersion("1.0.*")]
|
||||
|
[assembly: AssemblyVersion("1.0.0.0")] |
||||
|
[assembly: AssemblyFileVersion("1.0.0.0")] |
@ -0,0 +1,71 @@ |
|||||
|
//------------------------------------------------------------------------------
|
||||
|
// <auto-generated>
|
||||
|
// Dieser Code wurde von einem Tool generiert.
|
||||
|
// Laufzeitversion: 4.0.30319.42000
|
||||
|
//
|
||||
|
// Änderungen an dieser Datei können fehlerhaftes Verhalten verursachen und gehen verloren, wenn
|
||||
|
// der Code erneut generiert wird.
|
||||
|
// </auto-generated>
|
||||
|
//------------------------------------------------------------------------------
|
||||
|
|
||||
|
namespace STDHelper.Properties |
||||
|
{ |
||||
|
|
||||
|
|
||||
|
/// <summary>
|
||||
|
/// Eine stark typisierte Ressourcenklasse zum Suchen von lokalisierten Zeichenfolgen usw.
|
||||
|
/// </summary>
|
||||
|
// Diese Klasse wurde von der StronglyTypedResourceBuilder-Klasse
|
||||
|
// über ein Tool wie ResGen oder Visual Studio automatisch generiert.
|
||||
|
// Um einen Member hinzuzufügen oder zu entfernen, bearbeiten Sie die .ResX-Datei und führen dann ResGen
|
||||
|
// mit der Option /str erneut aus, oder erstellen Sie Ihr VS-Projekt neu.
|
||||
|
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")] |
||||
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()] |
||||
|
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] |
||||
|
internal class Resources |
||||
|
{ |
||||
|
|
||||
|
private static global::System.Resources.ResourceManager resourceMan; |
||||
|
|
||||
|
private static global::System.Globalization.CultureInfo resourceCulture; |
||||
|
|
||||
|
[global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] |
||||
|
internal Resources() |
||||
|
{ |
||||
|
} |
||||
|
|
||||
|
/// <summary>
|
||||
|
/// Gibt die zwischengespeicherte ResourceManager-Instanz zurück, die von dieser Klasse verwendet wird.
|
||||
|
/// </summary>
|
||||
|
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] |
||||
|
internal static global::System.Resources.ResourceManager ResourceManager |
||||
|
{ |
||||
|
get |
||||
|
{ |
||||
|
if ((resourceMan == null)) |
||||
|
{ |
||||
|
global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("STDHelper.Properties.Resources", typeof(Resources).Assembly); |
||||
|
resourceMan = temp; |
||||
|
} |
||||
|
return resourceMan; |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
/// <summary>
|
||||
|
/// Überschreibt die CurrentUICulture-Eigenschaft des aktuellen Threads für alle
|
||||
|
/// Ressourcenlookups, die diese stark typisierte Ressourcenklasse verwenden.
|
||||
|
/// </summary>
|
||||
|
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] |
||||
|
internal static global::System.Globalization.CultureInfo Culture |
||||
|
{ |
||||
|
get |
||||
|
{ |
||||
|
return resourceCulture; |
||||
|
} |
||||
|
set |
||||
|
{ |
||||
|
resourceCulture = value; |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
} |
@ -0,0 +1,117 @@ |
|||||
|
<?xml version="1.0" encoding="utf-8"?> |
||||
|
<root> |
||||
|
<!-- |
||||
|
Microsoft ResX Schema |
||||
|
|
||||
|
Version 2.0 |
||||
|
|
||||
|
The primary goals of this format is to allow a simple XML format |
||||
|
that is mostly human readable. The generation and parsing of the |
||||
|
various data types are done through the TypeConverter classes |
||||
|
associated with the data types. |
||||
|
|
||||
|
Example: |
||||
|
|
||||
|
... ado.net/XML headers & schema ... |
||||
|
<resheader name="resmimetype">text/microsoft-resx</resheader> |
||||
|
<resheader name="version">2.0</resheader> |
||||
|
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader> |
||||
|
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader> |
||||
|
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data> |
||||
|
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data> |
||||
|
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64"> |
||||
|
<value>[base64 mime encoded serialized .NET Framework object]</value> |
||||
|
</data> |
||||
|
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> |
||||
|
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value> |
||||
|
<comment>This is a comment</comment> |
||||
|
</data> |
||||
|
|
||||
|
There are any number of "resheader" rows that contain simple |
||||
|
name/value pairs. |
||||
|
|
||||
|
Each data row contains a name, and value. The row also contains a |
||||
|
type or mimetype. Type corresponds to a .NET class that support |
||||
|
text/value conversion through the TypeConverter architecture. |
||||
|
Classes that don't support this are serialized and stored with the |
||||
|
mimetype set. |
||||
|
|
||||
|
The mimetype is used for serialized objects, and tells the |
||||
|
ResXResourceReader how to depersist the object. This is currently not |
||||
|
extensible. For a given mimetype the value must be set accordingly: |
||||
|
|
||||
|
Note - application/x-microsoft.net.object.binary.base64 is the format |
||||
|
that the ResXResourceWriter will generate, however the reader can |
||||
|
read any of the formats listed below. |
||||
|
|
||||
|
mimetype: application/x-microsoft.net.object.binary.base64 |
||||
|
value : The object must be serialized with |
||||
|
: System.Serialization.Formatters.Binary.BinaryFormatter |
||||
|
: and then encoded with base64 encoding. |
||||
|
|
||||
|
mimetype: application/x-microsoft.net.object.soap.base64 |
||||
|
value : The object must be serialized with |
||||
|
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter |
||||
|
: and then encoded with base64 encoding. |
||||
|
|
||||
|
mimetype: application/x-microsoft.net.object.bytearray.base64 |
||||
|
value : The object must be serialized into a byte array |
||||
|
: using a System.ComponentModel.TypeConverter |
||||
|
: and then encoded with base64 encoding. |
||||
|
--> |
||||
|
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"> |
||||
|
<xsd:element name="root" msdata:IsDataSet="true"> |
||||
|
<xsd:complexType> |
||||
|
<xsd:choice maxOccurs="unbounded"> |
||||
|
<xsd:element name="metadata"> |
||||
|
<xsd:complexType> |
||||
|
<xsd:sequence> |
||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" /> |
||||
|
</xsd:sequence> |
||||
|
<xsd:attribute name="name" type="xsd:string" /> |
||||
|
<xsd:attribute name="type" type="xsd:string" /> |
||||
|
<xsd:attribute name="mimetype" type="xsd:string" /> |
||||
|
</xsd:complexType> |
||||
|
</xsd:element> |
||||
|
<xsd:element name="assembly"> |
||||
|
<xsd:complexType> |
||||
|
<xsd:attribute name="alias" type="xsd:string" /> |
||||
|
<xsd:attribute name="name" type="xsd:string" /> |
||||
|
</xsd:complexType> |
||||
|
</xsd:element> |
||||
|
<xsd:element name="data"> |
||||
|
<xsd:complexType> |
||||
|
<xsd:sequence> |
||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> |
||||
|
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" /> |
||||
|
</xsd:sequence> |
||||
|
<xsd:attribute name="name" type="xsd:string" msdata:Ordinal="1" /> |
||||
|
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" /> |
||||
|
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" /> |
||||
|
</xsd:complexType> |
||||
|
</xsd:element> |
||||
|
<xsd:element name="resheader"> |
||||
|
<xsd:complexType> |
||||
|
<xsd:sequence> |
||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> |
||||
|
</xsd:sequence> |
||||
|
<xsd:attribute name="name" type="xsd:string" use="required" /> |
||||
|
</xsd:complexType> |
||||
|
</xsd:element> |
||||
|
</xsd:choice> |
||||
|
</xsd:complexType> |
||||
|
</xsd:element> |
||||
|
</xsd:schema> |
||||
|
<resheader name="resmimetype"> |
||||
|
<value>text/microsoft-resx</value> |
||||
|
</resheader> |
||||
|
<resheader name="version"> |
||||
|
<value>2.0</value> |
||||
|
</resheader> |
||||
|
<resheader name="reader"> |
||||
|
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> |
||||
|
</resheader> |
||||
|
<resheader name="writer"> |
||||
|
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> |
||||
|
</resheader> |
||||
|
</root> |
@ -0,0 +1,30 @@ |
|||||
|
//------------------------------------------------------------------------------
|
||||
|
// <auto-generated>
|
||||
|
// This code was generated by a tool.
|
||||
|
// Runtime Version:4.0.30319.42000
|
||||
|
//
|
||||
|
// Changes to this file may cause incorrect behavior and will be lost if
|
||||
|
// the code is regenerated.
|
||||
|
// </auto-generated>
|
||||
|
//------------------------------------------------------------------------------
|
||||
|
|
||||
|
namespace STDHelper.Properties |
||||
|
{ |
||||
|
|
||||
|
|
||||
|
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] |
||||
|
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "11.0.0.0")] |
||||
|
internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase |
||||
|
{ |
||||
|
|
||||
|
private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); |
||||
|
|
||||
|
public static Settings Default |
||||
|
{ |
||||
|
get |
||||
|
{ |
||||
|
return defaultInstance; |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
} |
@ -0,0 +1,7 @@ |
|||||
|
<?xml version='1.0' encoding='utf-8'?> |
||||
|
<SettingsFile xmlns="uri:settings" CurrentProfile="(Default)"> |
||||
|
<Profiles> |
||||
|
<Profile Name="(Default)" /> |
||||
|
</Profiles> |
||||
|
<Settings /> |
||||
|
</SettingsFile> |
@ -0,0 +1,141 @@ |
|||||
|
<?xml version="1.0" encoding="utf-8"?> |
||||
|
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> |
||||
|
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" /> |
||||
|
<PropertyGroup> |
||||
|
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration> |
||||
|
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform> |
||||
|
<ProjectGuid>{C763D8F1-B426-4E05-AA56-D1054D36392E}</ProjectGuid> |
||||
|
<OutputType>WinExe</OutputType> |
||||
|
<RootNamespace>STDHelper</RootNamespace> |
||||
|
<AssemblyName>STDHelper</AssemblyName> |
||||
|
<TargetFrameworkVersion>v4.7.2</TargetFrameworkVersion> |
||||
|
<FileAlignment>512</FileAlignment> |
||||
|
<ProjectTypeGuids>{60dc8134-eba5-43b8-bcc9-bb4bc16c2548};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids> |
||||
|
<WarningLevel>4</WarningLevel> |
||||
|
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects> |
||||
|
<Deterministic>true</Deterministic> |
||||
|
<IsWebBootstrapper>false</IsWebBootstrapper> |
||||
|
<PublishUrl>publish\</PublishUrl> |
||||
|
<Install>true</Install> |
||||
|
<InstallFrom>Disk</InstallFrom> |
||||
|
<UpdateEnabled>false</UpdateEnabled> |
||||
|
<UpdateMode>Foreground</UpdateMode> |
||||
|
<UpdateInterval>7</UpdateInterval> |
||||
|
<UpdateIntervalUnits>Days</UpdateIntervalUnits> |
||||
|
<UpdatePeriodically>false</UpdatePeriodically> |
||||
|
<UpdateRequired>false</UpdateRequired> |
||||
|
<MapFileExtensions>true</MapFileExtensions> |
||||
|
<ApplicationRevision>1</ApplicationRevision> |
||||
|
<ApplicationVersion>1.0.0.%2a</ApplicationVersion> |
||||
|
<UseApplicationTrust>false</UseApplicationTrust> |
||||
|
<PublishWizardCompleted>true</PublishWizardCompleted> |
||||
|
<BootstrapperEnabled>true</BootstrapperEnabled> |
||||
|
</PropertyGroup> |
||||
|
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> |
||||
|
<PlatformTarget>AnyCPU</PlatformTarget> |
||||
|
<DebugSymbols>true</DebugSymbols> |
||||
|
<DebugType>full</DebugType> |
||||
|
<Optimize>false</Optimize> |
||||
|
<OutputPath>bin\Debug\</OutputPath> |
||||
|
<DefineConstants>DEBUG;TRACE</DefineConstants> |
||||
|
<ErrorReport>prompt</ErrorReport> |
||||
|
<WarningLevel>4</WarningLevel> |
||||
|
</PropertyGroup> |
||||
|
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' "> |
||||
|
<PlatformTarget>AnyCPU</PlatformTarget> |
||||
|
<DebugType>pdbonly</DebugType> |
||||
|
<Optimize>true</Optimize> |
||||
|
<OutputPath>bin\Release\</OutputPath> |
||||
|
<DefineConstants>TRACE</DefineConstants> |
||||
|
<ErrorReport>prompt</ErrorReport> |
||||
|
<WarningLevel>4</WarningLevel> |
||||
|
</PropertyGroup> |
||||
|
<PropertyGroup> |
||||
|
<ManifestCertificateThumbprint>E91E2DA49C4D2890B4348E2560C137AD9BCA1E20</ManifestCertificateThumbprint> |
||||
|
</PropertyGroup> |
||||
|
<PropertyGroup> |
||||
|
<ManifestKeyFile>STDHelper_TemporaryKey.pfx</ManifestKeyFile> |
||||
|
</PropertyGroup> |
||||
|
<PropertyGroup> |
||||
|
<GenerateManifests>true</GenerateManifests> |
||||
|
</PropertyGroup> |
||||
|
<PropertyGroup> |
||||
|
<SignManifests>true</SignManifests> |
||||
|
</PropertyGroup> |
||||
|
<ItemGroup> |
||||
|
<Reference Include="System" /> |
||||
|
<Reference Include="System.Data" /> |
||||
|
<Reference Include="System.Drawing" /> |
||||
|
<Reference Include="System.Windows.Forms" /> |
||||
|
<Reference Include="System.Xml" /> |
||||
|
<Reference Include="Microsoft.CSharp" /> |
||||
|
<Reference Include="System.Core" /> |
||||
|
<Reference Include="System.Xml.Linq" /> |
||||
|
<Reference Include="System.Data.DataSetExtensions" /> |
||||
|
<Reference Include="System.Net.Http" /> |
||||
|
<Reference Include="System.Xaml"> |
||||
|
<RequiredTargetFramework>4.0</RequiredTargetFramework> |
||||
|
</Reference> |
||||
|
<Reference Include="WindowsBase" /> |
||||
|
<Reference Include="PresentationCore" /> |
||||
|
<Reference Include="PresentationFramework" /> |
||||
|
</ItemGroup> |
||||
|
<ItemGroup> |
||||
|
<ApplicationDefinition Include="App.xaml"> |
||||
|
<Generator>MSBuild:Compile</Generator> |
||||
|
<SubType>Designer</SubType> |
||||
|
</ApplicationDefinition> |
||||
|
<Page Include="MainWindow.xaml"> |
||||
|
<Generator>MSBuild:Compile</Generator> |
||||
|
<SubType>Designer</SubType> |
||||
|
</Page> |
||||
|
<Compile Include="App.xaml.cs"> |
||||
|
<DependentUpon>App.xaml</DependentUpon> |
||||
|
<SubType>Code</SubType> |
||||
|
</Compile> |
||||
|
<Compile Include="MainWindow.xaml.cs"> |
||||
|
<DependentUpon>MainWindow.xaml</DependentUpon> |
||||
|
<SubType>Code</SubType> |
||||
|
</Compile> |
||||
|
</ItemGroup> |
||||
|
<ItemGroup> |
||||
|
<Compile Include="Properties\AssemblyInfo.cs"> |
||||
|
<SubType>Code</SubType> |
||||
|
</Compile> |
||||
|
<Compile Include="Properties\Resources.Designer.cs"> |
||||
|
<AutoGen>True</AutoGen> |
||||
|
<DesignTime>True</DesignTime> |
||||
|
<DependentUpon>Resources.resx</DependentUpon> |
||||
|
</Compile> |
||||
|
<Compile Include="Properties\Settings.Designer.cs"> |
||||
|
<AutoGen>True</AutoGen> |
||||
|
<DependentUpon>Settings.settings</DependentUpon> |
||||
|
<DesignTimeSharedInput>True</DesignTimeSharedInput> |
||||
|
</Compile> |
||||
|
<EmbeddedResource Include="Properties\Resources.resx"> |
||||
|
<Generator>ResXFileCodeGenerator</Generator> |
||||
|
<LastGenOutput>Resources.Designer.cs</LastGenOutput> |
||||
|
</EmbeddedResource> |
||||
|
<None Include="Properties\Settings.settings"> |
||||
|
<Generator>SettingsSingleFileGenerator</Generator> |
||||
|
<LastGenOutput>Settings.Designer.cs</LastGenOutput> |
||||
|
</None> |
||||
|
<None Include="STDHelper_TemporaryKey.pfx" /> |
||||
|
</ItemGroup> |
||||
|
<ItemGroup> |
||||
|
<None Include="App.config" /> |
||||
|
</ItemGroup> |
||||
|
<ItemGroup> |
||||
|
<BootstrapperPackage Include=".NETFramework,Version=v4.7.2"> |
||||
|
<Visible>False</Visible> |
||||
|
<ProductName>Microsoft .NET Framework 4.7.2 %28x86 und x64%29</ProductName> |
||||
|
<Install>true</Install> |
||||
|
</BootstrapperPackage> |
||||
|
<BootstrapperPackage Include="Microsoft.Net.Framework.3.5.SP1"> |
||||
|
<Visible>False</Visible> |
||||
|
<ProductName>.NET Framework 3.5 SP1</ProductName> |
||||
|
<Install>false</Install> |
||||
|
</BootstrapperPackage> |
||||
|
</ItemGroup> |
||||
|
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" /> |
||||
|
</Project> |
Loading…
Reference in new issue