【问题标题】:Programmatically insert Textbox into Scrollview以编程方式将文本框插入 Scrollview
【发布时间】:2015-08-03 14:54:12
【问题描述】:
    public class CustomEditorRenderer :  EditorRenderer{
    protected override void OnElementChanged(ElementChangedEventArgs<Editor> e)
        {
            base.OnElementChanged(e);
            if (e.NewElement == null) return;
            Element.Focused += ElementOnFocused;
            Element.Unfocused += ElementOnFocused;
            SetScrolling(Editor);
        }

        private void SetScrolling(CustomEditor view){
          //TODO Custom scrolling?
        }
}

我打算尝试以下方式:

var scroll = new ScrollViewer();
scroll.Content = Control;

但是,由于无法设置parent 属性,我不完全确定如何将滚动视图放入视图中。我希望这样做:

var parent = Control.Parent;
scroll.Parent = parent;
Control.Parent = scroll;

请耐心等待,因为我对 Windows 开发也很陌生,可能会遗漏一些东西。如果它有帮助,我没有使用 XAML,它都是一个 MVVM 实现,带有以编程方式创建的视图。任何帮助表示赞赏!

【问题讨论】:

  • 我不能做完全相同的实现,但是你发布的链接给了我一个不错的想法来尝试。我会把它作为我自己问题的答案发布。

标签: c# windows mvvm xamarin renderer


【解决方案1】:

环顾四周,我可能找到了可能的解决方案。

private void SetScrolling(CustomEditor view){
    var scroll = new ScrollViewer{Content = Control};
    var index = Children.IndexOf(Control);
    if(index != -1)
        Children.RemoveAt(index);
    Children.Add(scroll);
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-10-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-08-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多