// Dinamik Buton | www.yazilimcik.com
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
// Dinamik Buton | www.yazilimcik.com
namespace Dinamik_Buton_Yazilimcik_Com
{
    public partial class Form1 : Form
    {
        // ProcessDialogKey() Metodu, klavyeden Herhangi Bir Tusa Basildiginda Çalisir:
        protected override bool ProcessDialogKey(Keys keyData)
        {
            Button btn = new Button();
            btn.Text = "Dinamik Buton";
            btn.Name = "dinamikButon";
            btn.Size = new Size(200, 50);
            btn.Location = new Point(250, 100);
            btn.Click += new EventHandler(btn_Click);
            btn.MouseDown += new MouseEventHandler(btn_MouseDown);
            this.Controls.Add(btn);
            // Sol yön tusunu kontrol eden if blogu
            if (keyData == Keys.Left && btn.Left > 0)
                btn.Location = new Point(btn.Left - 200, btn.Top);
            // Sag yön tusunu kontrol eden if blogu
            else if (keyData == Keys.Right && btn.Right 
                btn.Location = new Point(btn.Left + 200, btn.Top);
            // Yukari yön tusunu kontrol eden if blogu
            else if (keyData == Keys.Up && btn.Top > 0)
                btn.Location = new Point(btn.Left, btn.Top - 50);
            // Asagi yön tusunu kontrol eden if blogu
            else if (keyData == Keys.Down && btn.Bottom 
                btn.Location = new Point(btn.Left, btn.Top + 50);
            return base.ProcessDialogKey(keyData);
        }
        public Form1()
        {
            InitializeComponent();
        }
        private void Form1_Load(object sender, EventArgs e)
        {
            Button btn = new Button();
            btn.Text = "Dinamik Buton";
            btn.Name = "dinamikButon";
            btn.Size = new Size(200, 50);
            btn.Location = new Point(250, 100);
            btn.Click += new EventHandler(btn_Click);
            btn.MouseDown += new MouseEventHandler(btn_MouseDown);
            this.Controls.Add(btn);
        }
        private void btn_MouseDown(object sender, MouseEventArgs e)
        {
            if (e.Button == MouseButtons.Right)
            {
                MessageBox.Show("Buton’a Sag Tikladiniz..!", "Bilgi:");
            }
        }
        private void btn_Click(object sender, EventArgs e)
        {
            MessageBox.Show("Buton’a Tikladiniz..!", "Bilgi:");
        }
    }
}
// Dinamik Buton | www.yazilimcik.com