WinForm PictureBox
CRUD Operations Series
- Part 1 TextBox control
- Part 2 CheckBox control
- Part 3 RadioButton control
- Part 4 DateTimePicker control
- Part 5 ComboBox control
- Part 6 PictureBox control
- Part 7 TabControl control
LOAD FILE IMAGE SETUP
IMAGE SETUP2
IMAGE SETUP3
CODE:
private void EmployeePictureBox_Click(object sender, EventArgs e)
{
OpenFileDialog ofd = new OpenFileDialog();
ofd.Filter = "Image Files(*.png;*.jpg;*.jpeg)|*.png;*.jpg;*.jpeg";
ofd.Title = "Select Image";
ofd.InitialDirectory = Environment.GetFolderPath
(Environment.SpecialFolder.MyPictures);
if (ofd.ShowDialog() == DialogResult.OK)
{
string imgpath = ofd.FileName;
EmployeePictureBox.ImageLocation = imgpath;
}
}
SAVE IMAGE
CODE:
private byte[] GetPhotoBytes()
{
MemoryStream memoryStream = new MemoryStream();
//EmployeePictureBox.Image.Save(memoryStream,
System.Drawing.Imaging.ImageFormat.Png);
// EmployeePictureBox.Image.RawFormat Gets the file format
EmployeePictureBox.Image.Save(memoryStream,
EmployeePictureBox.Image.RawFormat);
byte[] photoBytes = memoryStream.GetBuffer();
return photoBytes;
}
CODE:
ALTER TABLE tbl_Employee
ADD Photo IMAGE null
CODE:
ALTER PROCEDURE [dbo].[usp_AddEmployee]
(
@FirstName NVARCHAR(50),
@LastName NVARCHAR(50),
@Email NVARCHAR(50),
@IsVB BIT,
@IsJava BIT,
@IsCSharp BIT,
@Gender INT,
@Dob DATETIME = null ,
@Tob DATETIME = null,
@Designation NVARCHAR(50),
@JobCategory NVARCHAR(50),
@Photo IMAGE
)
As
BEGIN
INSERT INTO [dbo].[tbl_Employee](
[FirstName],[LastName],[Email],[IsVB],[IsJava],[IsCSharp],[Gender],[DOB],[TOB],
[Designation],[JobCategory],[Photo])
VALUES (@FirstName, @LastName , @Email, @IsVB, @IsJava, @IsCSharp, @Gender, @Dob,
@Tob, @Designation, @JobCategory,@Photo)
END
COMPLETE CODE
CODE:
using System;
using System.Configuration;
using System.Data;
using System.IO;
using System.Data.SqlClient;
using System.Windows.Forms;
namespace ABCWF
{
public partial class EmployeeForm : Form
{
public EmployeeForm()
{
InitializeComponent();
}
private void SubmitButton_Click(object sender, EventArgs e)
{
InsertIntoDatabase();
}
private void InsertIntoDatabase()
{
try
{
string connString = ConfigurationManager.ConnectionStrings["abccs"].ConnectionString;
using (SqlConnection conn = new SqlConnection(connString))
{
using (SqlCommand command = new SqlCommand())
{
command.Connection = conn;
command.CommandType = CommandType.StoredProcedure;
command.CommandText = "usp_AddEmployee";
command.Parameters.AddWithValue("@FirstName", FirstNameTextBox.Text);
command.Parameters.AddWithValue("@LastName", LastNameTextBox.Text);
command.Parameters.AddWithValue("@Email", EmailTextBox.Text);
command.Parameters.AddWithValue("@IsVB", IsVBCheckBox.Checked);
command.Parameters.AddWithValue("@IsJava", IsJavaCheckBox.Checked);
command.Parameters.AddWithValue("@IsCSharp", IsCSharpCheckBox.Checked);
command.Parameters.AddWithValue("@Gender", GetGenderValue());
command.Parameters.AddWithValue("@Dob",
(DOBDateTimePicker.Text.Trim() == string.Empty) ? (DateTime?)null : DOBDateTimePicker.Value.Date);
command.Parameters.AddWithValue("@Tob", (TimeDateTimePicker.Text.Trim() == string.Empty) ? (TimeSpan?)null : TimeDateTimePicker.Value.TimeOfDay);
command.Parameters.AddWithValue("@Designation", DesignationComboBox.SelectedValue);
command.Parameters.AddWithValue("@JobCategory", JobCategoryComboBox.SelectedValue);
command.Parameters.AddWithValue("@Photo", GetPhotoBytes());
//Execute the insert query
conn.Open();
command.ExecuteNonQuery();
MessageBox.Show("Record inserted successfully.", "Inserted", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message, "Insertion Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
private byte[] GetPhotoBytes()
{
MemoryStream memoryStream = new MemoryStream();
//EmployeePictureBox.Image.Save(memoryStream, System.Drawing.Imaging.ImageFormat.Png);
// EmployeePictureBox.Image.RawFormat Gets the file format
EmployeePictureBox.Image.Save(memoryStream, EmployeePictureBox.Image.RawFormat);
byte[] photoBytes = memoryStream.GetBuffer();
return photoBytes;
}
enum Sex
{
OtherSex = 0,
Male = 1,
Female = 2
}
private int GetGenderValue()
{
if (MaleRadioButton.Checked)
{
return (int)Sex.Male;
}
if (FemaleRadioButton.Checked)
{
return (int)Sex.Female;
}
return (int)Sex.OtherSex;
}
private void DOBDateTimePicker_ValueChanged(object sender, EventArgs e)
{
DOBDateTimePicker.CustomFormat = "dd/MM/yyyy";
}
private void TimeDateTimePicker_ValueChanged_1(object sender, EventArgs e)
{
DateTimePicker dtp = (DateTimePicker)sender;
dtp.CustomFormat = "HH:mm";
}
private void EmployeeForm_Load(object sender, EventArgs e)
{
//Designation
DesignationComboBox.DataSource = GetCustomList(1);
DesignationComboBox.DisplayMember = "Description";
//DesignationComboBox.ValueMember = "ListId";
DesignationComboBox.ValueMember = "Description";
DesignationComboBox.SelectedIndex = -1;
//Job Category
JobCategoryComboBox.DataSource = GetCustomList(2);
JobCategoryComboBox.DisplayMember = "Description";
JobCategoryComboBox.ValueMember = "Description";
JobCategoryComboBox.SelectedIndex = -1;
//Projects
}
private DataTable GetCustomList(int listType)
{
DataTable dt = new DataTable();
string connString = ConfigurationManager.ConnectionStrings["abccs"].ConnectionString;
using (SqlConnection conn = new SqlConnection(connString))
{
using (SqlCommand command = new SqlCommand())
{
command.Connection = conn;
command.CommandType = CommandType.StoredProcedure;
command.CommandText = "usp_ListItems";
command.Parameters.AddWithValue("@ListType", listType);
conn.Open();
SqlDataReader reader = command.ExecuteReader();
dt.Load(reader);
}
}
return dt;
}
private void EmployeePictureBox_Click(object sender, EventArgs e)
{
OpenFileDialog ofd = new OpenFileDialog();
ofd.Filter = "Image Files(*.png;*.jpg;*.jpeg)|*.png;*.jpg;*.jpeg";
ofd.Title = "Select Image";
ofd.InitialDirectory = Environment.GetFolderPath
(Environment.SpecialFolder.MyPictures);
if (ofd.ShowDialog() == DialogResult.OK)
{
string imgpath = ofd.FileName;
EmployeePictureBox.ImageLocation = imgpath;
}
}
}
}
DATA INPUT
OUTPUT
© अजीत कुमार, सर्वाधिकार सुरक्षित।
इस आलेख को उद्धृत करते हुए इस लेख के लिंक का भी विवरण दें। इस आलेख को कॉपीराइट सूचना के साथ यथावत साझा करने की अनुमति है। कृपया इसे ऐसे स्थान पर साझा न करें जहाँ इसे देखने के लिए शुल्क देना पडे।
No comments:
Post a Comment