Window Overview

The Window displays content in a modal or non-modal HTML window and, by default, can be moved, resized, and closed.

The Window wrapper for Vue is a client-side wrapper for the Kendo UI Window widget.

The Window Package is part of Kendo UI for Vue, a professional grade UI library with 100+ components for building modern and feature-rich applications. To try it out sign up for a free 30-day trial.

Basic Usage

The following example demonstrates how to initialize the Window.

Example
View Source
Change Theme:

Installation

To initialize the Window, either:

Initializing with Webpack

  1. Install Kendo UI and add a theme.

     ```sh
     npm install --save @progress/kendo-ui
     npm install --save @progress/kendo-theme-default
     ```
  2. Install the Kendo UI Window package for Vue.

     ```sh
     npm install --save @progress/kendo-window-vue-wrapper
     ```
  3. Import the Kendo UI packages to the App component. If you use the Kendo UI components more than once in your application, add all Kendo UI-related files to the main.js file. If you use the Kendo UI components once in your application, add the Kendo UI-related files the component where they will be referred.

    import '@progress/kendo-ui' // This will import the entire Kendo UI library
    // As an alternative, you could import only the scripts that are used by a specific widget:
    // import '@progress/kendo-ui/js/kendo.window' // Imports only the Window script and its dependencies
    
    import '@progress/kendo-theme-default/dist/all.css'
    
    import { Window, WindowInstaller } from '@progress/kendo-window-vue-wrapper'
    
    Vue.use(WindowInstaller)
    
    new Vue({
    	el: '#app',
    	components: {
    		Window
    	}
    })

Functionality and Features

Events

The following example demonstrates basic Window events. You can subscribe to all Window events by the handler name.

<div id="vueapp" class="vue-app">
	<kendo-window :title="'Window title'" v-on:open="onOpen">Content</kendo-window>
</div>
Vue.use(WindowInstaller);

new Vue({
	el: '#vueapp',
	methods: {
		onOpen (e) {
			console.log('Window is about to be opened.');
		}
	}
})