We use cookies to give you the best experience on our website. If you continue to browse, then you agree to our privacy policy and cookie policy. Image for the cookie policy date
close icon

Kanban card shadow

Is it possible to remove frame (or at least border and shadow) from card? I want to use custom frame with corner radius and no shadow.

3 Replies

BK Bharathiraja K Syncfusion Team March 22, 2019 10:16 AM UTC

Hi Artur, 
 
Greeting from Syncfusion, 
 
Yes, it is possible to remove border and shadow by replacing the default card template with your own design using SfKanban.CardTemplate, please find the code snippet below. 
 
Code Snippet [XAML]: 
<kanban:SfKanban.CardTemplate> 
                <DataTemplate> 
                   <Frame  WidthRequest="250"  Padding="0"  CornerRadius="8" HasShadow="False" > 
                        <StackLayout Padding="10" Orientation="Vertical"> 
                            <StackLayout  Orientation="Horizontal"> 
                        <Label Text="{Binding Path=Title}" TextColor="Black" HorizontalOptions="StartAndExpand" > 
                        </Label> 
                    </StackLayout> 
                    <StackLayout  Orientation="Horizontal"> 
                        <Label Text="{Binding Description}" WidthRequest="150" FontSize="14" TextColor="Silver" LineBreakMode="WordWrap" ></Label> 
                        <Image Source="{Binding ImageURL}" HeightRequest="50" WidthRequest="50"  ></Image> 
                    </StackLayout> 
                        </StackLayout> 
                    </Frame> 
                </DataTemplate> 
</kanban:SfKanban.CardTemplate> 
 
Need to follow two more step to remove border in android. 
 
Create class inherited from SfKanbanAdaptorHelper under Android project. Override BindItemView and set transparent color for ITemView. 
[C#] 
    
namespace SampleKanban.Droid 
{ 
public class CustomKanbanAdapter : KanbanAdapterHelper 
    { 
        public CustomKanbanAdapter(Syncfusion.SfKanban.Android.SfKanban kanban, Syncfusion.SfKanban.XForms.SfKanban fkanban) : base(kanban, fkanban) 
        { 
        } 
 
        protected override void BindItemView(Native.KanbanColumn column, Native.KanbanItemViewHolder viewHolder, object data, int position) 
        { 
            base.BindItemView(column, viewHolder, data, position); 
            viewHolder.ItemView.SetBackgroundColor(Android.Graphics.Color.Transparent); 
        } 
    } 
} 
} 
 
Create instance for helper class under form view initializer. 
 
[C#] Class: MainActivity.CS 
. . .         
 protected override void OnCreate(Bundle savedInstanceState) 
        { 
            base.OnCreate(savedInstanceState); 
. . . 
            Xamarin.Forms.Forms.ViewInitialized += Forms_ViewInitialized; 
. . . 
            LoadApplication(new App()); 
        } 
. . .  
 
private void Forms_ViewInitialized(object sender, ViewInitializedEventArgs e) 
    { 
            var nativeKanban = e.NativeView as Native.SfKanban; 
            var FormsKanban = e.View as SfKanban; 
 
            if (nativeKanban != null && FormsKanban != null) 
            { 
                nativeKanban.Adapter = new CustomKanbanAdapter(nativeKanban, FormsKanban); 
            } 
    } 
 
 
We have prepared simple sample for this requirement that can be downloaded from below location.  
 
 
Regards, 
Bharathi. 



KL Kleverton December 21, 2022 08:33 PM UTC

Hello! Is it possible to achieve this when using a DataTemplateSelector? Thanks!



SS SaiGanesh Sakthivel Syncfusion Team December 22, 2022 08:49 AM UTC

Hi Kleverton,


#Regarding DataTemplateSelector in SfKanban

Your requirement can also be achieved using the DataTemplateSelector in SFKanban. Please refer to the following UG documentation about ‘How to use the DataTemplateSelector in SfKanban’ for your reference.


UG: https://help.syncfusion.com/xamarin/kanban-board/cards#data-template-selector


Please let us know if you have any concerns.


Regards,
SaiGanesh Sakthivel


Loader.
Live Chat Icon For mobile
Up arrow icon