SplitContainer + wykrywanie kliknięcia myszką

0

Witam

Mam prostą aplikacje której główna forma jest podzielona na 2 części przez SplitContainer.
W jednej mam picturebox a w drugiej button itd.
Mam problem z tym że nie mogę wykryć kliknięcia myszką na tym SplitContainer a na czystej formie bez problemu to wykrywam. tym kodem:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

namespace WindowsApplication1
{
public partial class Form1 : Form
{

    private int ktoryRazLewy = 0;

    public Form1()
    {
        InitializeComponent();

        this.MouseUp += new MouseEventHandler(OnMouseUp);
    }

    private void Form1_Load(object sender, EventArgs e)
    {

    }

    public void OnMouseUp(object sender, MouseEventArgs e)
    {

        //który przycisk myszy został kliknięty?

        if (e.Button == MouseButtons.Left)
        {

            ktoryRazLewy += e.Clicks;

            MessageBox.Show("Lewy przycisk myszki click!\n" +

                            "na pozycji: x = " + e.X + " y = " + e.Y + "\n" +

                            "po raz: " + Convert.ToString(ktoryRazLewy));

        }
    }
}

}

a jak wrzuce na to SplitContainer to się sypie.
SplitContainer jest mi potrzebny do operacji na picturebox : zoom ,poruszanie nim prawo lewo taka niby mapka.
Proszę o pomoc.

0

"sie sypie" czyli ? Mam nadzieje, że dodałeś do SplitContainer normalnie zdarzenie na zakładce "Events" (zakładka Properties).
Poza tym na SplitContainer leża panele, SplitContainer jest pod nimi i tylko ta pionowa kreska do zmiany położenia podziału jest na wierzchu.
Jeśli chcesz reagować jakoś na zmianę podziału to SplitContainer ma takie zdarzenia jak SplitterMoved, SplitterMoving. Jeśli chcesz reagować na klikanie w obszar paneli przypisz zdarzenia do paneli.

0

Jeśli bedzie ktos potrzebowal to this trzeba zmienic na obiekt w którym ma byc urzywana myszka. np
picturebox1.MouseUp += new MouseEventHandler(OnMouseUp);

0

nie do końca zrozumiałem o co chodziło, ale zdaje mi się, że próbowałes zrobić coś typu
splitContainer1.Panel1.OnClick(etc....)
a zrobiłeś
splitContainer1.OnClick(etc....)
oto problem

1 użytkowników online, w tym zalogowanych: 0, gości: 1