C# Xamarin删除表节上边框

C# Xamarin删除表节上边框,c#,xamarin,xamarin.forms,tableview,C#,Xamarin,Xamarin.forms,Tableview,是否可以删除xamarins表节的顶部蓝色边框(或至少更改其颜色): 我查看了Xamarin TableView文档,但没有找到任何帮助: 目前我的代码如下所示: public class UserProfilePushNotification : TableView { public UserProfilePushNotification(string text) : base() { Intent = TableIntent

是否可以删除xamarins表节的顶部蓝色边框(或至少更改其颜色):

我查看了Xamarin TableView文档,但没有找到任何帮助:

目前我的代码如下所示:

public class UserProfilePushNotification : TableView
    {
        public UserProfilePushNotification(string text) : base()
        {
            Intent = TableIntent.Data;
            Root = new TableRoot
            {
                new TableSection
                {
                    new SwitchCell
                    {
                        Text = text
                    },
                    new TextCell()
                    {
                        Text = string.Empty
                    },
                    new TextCell
                    {
                        Text = "Android Version: 1.2.1"
                    }
                }
            };
        }
    }

我深入研究了这个问题,发现
TableView
是作为
ListView
实现的(在默认渲染器中)。
表部分
只是
列表视图
中的一个普通项目,第一个项目

如果不使用
表节
中的
标题
属性(在本例中不使用该属性),则可以将其隐藏

为此,我为
表视图
创建了一个自定义渲染,并隐藏了
列表视图
的第一个元素:

[assembly:ExportRenderer(typeof(Project.MenuTableView), typeof(Project.Droid.MenuTableViewRenderer))]
namespace Project.Droid
{
    public class MenuTableViewRenderer : TableViewRenderer
    {    
        private bool _firstElementAdded = false;

        protected override void OnElementChanged (ElementChangedEventArgs<TableView> e)
        {
            base.OnElementChanged (e);

            if (Control == null)
                return;

            var listView = Control as Android.Widget.ListView;    
            listView.ChildViewAdded += (sender, args) => 
            {    
                if (!_firstElementAdded)
                {    
                    args.Child.Visibility = ViewStates.Gone;    
                    _firstElementAdded = true;    
                }

            };
            // Uncomment this if you want to remove all the dividers from the table.
            //listView.DividerHeight = 0;    
        }    
    }
}
[程序集:ExportRenderer(typeof(Project.MenuTableView)、typeof(Project.Droid.MenuTableViewRenderer))]
名称空间项目.Droid
{
公共类MenuTableViewRenderer:TableViewRenderer
{    
private bool_firstElementAdded=false;
受保护的覆盖无效OnElementChanged(ElementChangedEventArgs e)
{
碱基。一个元素改变(e);
if(Control==null)
返回;
var listView=控件为Android.Widget.listView;
listView.ChildViewAdded+=(发件人,参数)=>
{    
如果(!\u firstelement已添加)
{    
args.Child.Visibility=ViewStates.Gone;
_firstElementAdded=true;
}
};
//如果要从表中删除所有分隔符,请取消对此的注释。
//listView.DividerHeight=0;
}    
}
}

@jzeferino别担心,我没有忘记你:)我只是没有时间测试它,然后才把它标记为正确答案,或者问它是否起作用。下班后我会测试一下。好的。那就告诉我。好吧,你的主意行得通!但遗憾的是,它删除了上边框,因此留下了一个无上装的表视图。有没有办法让灰色的边界完好无损?或者,我有另一种方法来实现带有swichcell的数据表?它删除了什么上边框?它将删除蓝色条。正确吗?是的,因为第一个元素是表格部分,his有一个蓝色分隔符。我看到的唯一方法就是试着给分隔器上色。但这是另一个骇客