Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using MaterialDesignColors.WpfExample.Domain;
- using System;
- using System.Collections.Generic;
- using System.ComponentModel;
- using System.Drawing.Imaging;
- using System.IO;
- using System.Linq;
- using System.Runtime.CompilerServices;
- using System.Text;
- using System.Threading.Tasks;
- using System.Windows;
- using System.Windows.Controls;
- using System.Windows.Controls.Primitives;
- using System.Windows.Data;
- using System.Windows.Documents;
- using System.Windows.Input;
- using System.Windows.Media;
- using System.Windows.Media.Imaging;
- using System.Windows.Shapes;
- using WpfAnimatedGif;
- namespace SQLWPF
- {
- /// <summary>
- /// Interaction logic for TestingWindow.xaml
- /// </summary>
- public partial class TestingWindow : Window
- {
- public TestingWindow()
- {
- InitializeComponent();
- //List<User> items = new List<User>
- //{
- // new User() { Initials = "JD", Name = "John Doe", Age = 42, Mail = "[email protected]" },
- // new User() { Initials = "JD", Name = "Jane Doe", Age = 39, Mail = "[email protected]" },
- // new User() { Initials = "SD", Name = "Sammy Doe", Age = 7, Mail = "[email protected]" }
- //};
- //lvUsers.ItemsSource = items;
- //List<SelectableViewModel> items1 = new List<SelectableViewModel>
- //{
- // new SelectableViewModel() { Initials = "JD", Name = "John Doe", Age = 42, Mail = "[email protected]" },
- // new SelectableViewModel() { Initials = "JD", Name = "Jane Doe", Age = 39, Mail = "[email protected]" },
- // new SelectableViewModel() { Initials = "SD", Name = "Sammy Doe", Age = 7, Mail = "[email protected]" }
- //};
- //ToggleList.ItemsSource = items1;
- dummy();
- //lvUsers.
- }
- public async Task dummy()
- {
- await InitList();
- }
- private Task InitList()
- {
- try
- {
- using (permissionsDatabaseModel e = new permissionsDatabaseModel())
- {
- List<UserSelectableModel> output = new List<UserSelectableModel>();
- foreach (Users item in (from users in e.Users
- select users).ToList())
- {
- output.Add(new UserSelectableModel(item));
- }
- UserToggleList.ItemsSource = output;
- }
- }
- catch (Exception)
- {
- throw;
- }
- return null;
- }
- private void ToggleButton_Drop(object sender, DragEventArgs e)
- {
- var data = e.Data.GetData(DataFormats.FileDrop);
- if (data != null)
- {
- var filesnames = data as string[];
- if (filesnames.Length > 0)
- {
- Image imageControl = (Image)sender;
- BitmapImage bitmapImage = new BitmapImage(new Uri(filesnames[0]));
- ImageBehavior.SetAnimatedSource(imageControl, bitmapImage);
- }
- }
- }
- private void ToggleButton_Drop_1(object sender, DragEventArgs e)
- {
- var data = e.Data.GetData(DataFormats.FileDrop);
- if (data != null)
- {
- var filesnames = data as string[];
- if (filesnames.Length > 0)
- {
- try
- {
- BitmapImage bitmapImage = new BitmapImage(new Uri(filesnames[0]));
- ToggleButton buttonControl = (ToggleButton)sender;
- Image imageControl = (Image)((Grid)buttonControl.Content).Children[1];
- string userIDString =
- (
- (TextBlock)
- (
- (Grid)buttonControl.Content
- ).Children[2]
- ).Text;
- int userID = Int32.Parse(userIDString);
- ImageBehavior.SetAnimatedSource(imageControl, bitmapImage);
- byte[] img = null;
- FileStream fs = new FileStream(filesnames[0], FileMode.Open, FileAccess.Read);
- BinaryReader br = new BinaryReader(fs);
- img = br.ReadBytes((int)fs.Length);
- using (permissionsDatabaseModel eDB = new permissionsDatabaseModel())
- {
- var query =
- from users in eDB.Users
- where users.ID == userID
- select users;
- // Execute the query, and change the column values
- // you want to change.
- foreach (Users user in query)
- {
- user.UserIcon = img;
- // Insert any additional changes to column values.
- }
- // Submit the changes to the database.
- try
- {
- eDB.SaveChanges();
- }
- catch (Exception exception)
- {
- Console.WriteLine(exception);
- // Provide for exceptions.
- }
- }
- }
- catch (Exception)
- {
- Button hello = new Button();
- dialog.IsOpen = true;
- }
- }
- }
- }
- public byte[] BitmapToByte(System.Drawing.Image img)
- {
- byte[] byteArray = new byte[0];
- using (MemoryStream stream = new MemoryStream())
- {
- img.Save(stream, ImageFormat.Gif);
- stream.Close();
- byteArray = stream.ToArray();
- }
- return byteArray;
- }
- private void Button_Click(object sender, RoutedEventArgs e)
- {
- InitList();
- }
- public BitmapImage ConvertWriteableBitmapToBitmapImage(WriteableBitmap wbm)
- {
- BitmapImage bmImage = new BitmapImage();
- using (MemoryStream stream = new MemoryStream())
- {
- PngBitmapEncoder encoder = new PngBitmapEncoder();
- encoder.Frames.Add(BitmapFrame.Create(wbm));
- encoder.Save(stream);
- bmImage.BeginInit();
- bmImage.CacheOption = BitmapCacheOption.OnLoad;
- bmImage.StreamSource = stream;
- bmImage.EndInit();
- bmImage.Freeze();
- }
- return bmImage;
- }
- private Dictionary<ToggleButton, BitmapImage> previousIcon = new Dictionary<ToggleButton, BitmapImage>();
- private void Stop_PreviewDragEnter(object sender, DragEventArgs e)
- {
- var data = e.Data.GetData(DataFormats.FileDrop);
- if (data != null)
- {
- var filesnames = data as string[];
- if (filesnames.Length > 0)
- {
- try
- {
- BitmapImage bitmapImage = new BitmapImage(new Uri(filesnames[0]));
- ToggleButton buttonControl = (ToggleButton)sender;
- Image imageControl = (Image)((Grid)buttonControl.Content).Children[1];
- if (imageControl.Source.GetType() == typeof(WriteableBitmap))
- previousIcon.Add(buttonControl, ConvertWriteableBitmapToBitmapImage((WriteableBitmap)imageControl.Source));
- else if (imageControl.Source.GetType() == typeof(BitmapImage))
- previousIcon.Add(buttonControl, (BitmapImage)imageControl.Source);
- ImageBehavior.SetAnimatedSource(imageControl, bitmapImage);
- }
- catch (Exception) { }
- }
- }
- }
- private void Stop_PreviewDragLeave(object sender, DragEventArgs e)
- {
- if (previousIcon != null)
- {
- ToggleButton buttonControl = (ToggleButton)sender;
- Image imageControl = (Image)((Grid)buttonControl.Content).Children[1];
- if (previousIcon.ContainsKey(buttonControl))
- ImageBehavior.SetAnimatedSource(imageControl, previousIcon[buttonControl]);
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement