public void slb_DataContextChanged(object sender, EventArgs e)
        {
            ViewModels.SearchListBoxViewModel viewModel = (ViewModels.SearchListBoxViewModel)DataContext;
            if (viewModel == null)
            {
                return;
            }
            TextBox textBox = this.FindControl <TextBox>("txtSearch");

            //TODO: memory leak?
            textBox.GetObservable(TextBox.TextProperty).Subscribe(viewModel.txtSearch_TextChanged);
        }
        public void lbxItems_DoubleClick(object sender, PointerReleasedEventArgs e)
        {
            if (!doubleclick)
            {
                return;
            }
            doubleclick = false;

            ViewModels.SearchListBoxViewModel viewModel = (ViewModels.SearchListBoxViewModel)DataContext;
            if (viewModel == null)
            {
                return;
            }
            viewModel.lbxItems_DoubleClick(sender, e);
        }