Friday, June 6, 2008

deepZoom key strock

public partial class Page : UserControl
{
Point _currentMousePosition = new Point();
public Page()
{
InitializeComponent();
initializeEvents();
}
private void initializeEvents()
{
this.MouseMove += new MouseEventHandler(Page_MouseMove);
this.KeyDown += new KeyEventHandler(Page_KeyDown);
}
void Page_KeyDown(object sender, KeyEventArgs e)
{
if (e.Key == Key.W) // zoom in
Zoom(1.2f, _currentMousePosition);
if (e.Key == Key.S) // zoom out
Zoom(0.8f, _currentMousePosition);
}
void Page_MouseMove(object sender, MouseEventArgs e)
{
_currentMousePosition = e.GetPosition(this);
}
private void Zoom(double zoomFactor, Point pointToZoom)
{
Point logicalPoint = dzo.ElementToLogicalPoint(pointToZoom);
dzo.ZoomAboutLogicalPoint(zoomFactor, logicalPoint.X, logicalPoint.Y);
}





}
}

No comments: