Click here to Skip to main content
15,897,187 members
Articles / Programming Languages / C#

FloatingWindow - Multi-windows Interface for Silverlight 4

Rate me:
Please Sign up or sign in to vote.
4.92/5 (80 votes)
16 May 2011CPOL8 min read 510K   3.9K   123  
Resizable windows simulating multi-windows desktop interface for Silverlight 4
using System.Windows;
using System.Windows.Input;

namespace SilverFlow.Controls
{
    /// <summary>
    /// This interface shall be implemented by an element to be resized.
    /// </summary>
    public interface IResizableElement
    {
        /// <summary>
        /// Gets or sets the width of the element.
        /// </summary>
        /// <value>The width.</value>
        double Width { get; set; }

        /// <summary>
        /// Gets or sets the height of the element.
        /// </summary>
        /// <value>The height.</value>
        double Height { get; set; }

        /// <summary>
        /// Gets or sets minimal width of the element.
        /// </summary>
        /// <value>Minimal width.</value>
        double MinWidth { get; set; }

        /// <summary>
        /// Gets or sets minimal height of the element.
        /// </summary>
        /// <value>Minimal height.</value>
        double MinHeight { get; set; }

        /// <summary>
        /// Gets or sets maximal width of the element.
        /// </summary>
        /// <value>Maximal width.</value>
        double MaxWidth { get; set; }

        /// <summary>
        /// Gets or sets maximal height of the element.
        /// </summary>
        /// <value>Maximal height.</value>
        double MaxHeight { get; set; }

        /// <summary>
        /// Gets the actual width.
        /// </summary>
        /// <value>The actual width.</value>
        double ActualWidth { get; }

        /// <summary>
        /// Gets the actual height.
        /// </summary>
        /// <value>The actual height.</value>
        double ActualHeight { get; }

        /// <summary>
        /// Gets or sets the position of the element.
        /// </summary>
        /// <value>The position.</value>
        Point Position { get; set; }

        /// <summary>
        /// Gets the parent of the element.
        /// </summary>
        /// <value>The parent object.</value>
        DependencyObject Parent { get; }

        /// <summary>
        /// Gets or sets the cursor of the element.
        /// </summary>
        /// <value>The cursor of the element.</value>
        Cursor Cursor { get; set; }

        /// <summary>
        /// Snapin controller.
        /// </summary>
        ISnapinController SnapinController { get; }
    }
}

By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.

If a file you wish to view isn't highlighted, and is a text file (not binary), please let us know and we'll add colourisation support for it.

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


Written By
Latvia Latvia
Jevgenij lives in Riga, Latvia. He started his programmer's career in 1983 developing software for radio equipment CAD systems. Created computer graphics for TV. Developed Internet credit card processing systems for banks.
Now he is System Analyst in Accenture.

Comments and Discussions