2017-10-14 74 views
0

我正在用xamarin格式的搜索欄進行操作。我無法通過點擊十字按鈕來刪除搜索欄中的搜索文本。我正在使用自定義渲染器來刪除搜索欄中的取消文本。當我使用該渲染器時,我無法刪除文本,如果我刪除該渲染器,它工作正常。我在renderer文件中做了什麼錯誤。以下是渲染器中的示例代碼,用於隱藏搜索欄旁邊的取消按鈕。搜索欄刪除文本在xamarin中不起作用ios

渲染器示例代碼:

protected override void OnElementPropertyChanged(object sender, PropertyChnagedEventArgs e) 
    { 

     Control.ShowCancelButton = false; 
    } 

enter image description here

當我嘗試通過單擊交叉圖像中搜索欄它不是在xamarin IOS,努力消除在搜索欄的文本,但它在IOS工作的罰款。

示例代碼:

<StackLayout Grid.Column = "0" Orientation = "Horizontal"> 
<Image Source = "backarrow.png" HorizontalOptions = "StartAndExpand" VerticalOptions = "CenterAndExpand" />       
<controls:CustomSearchbar x:Name = "CustomSearchbar" BackgroundColor ="Transparent" Text ="{Binding SearchTag}" SearchCommand ="{Binding RestaurantSearchCommand}" GHorizontalOptions = "StartAndExpand" VerticalOptions = "CenterAndExpand" > 

這裏是我使用搜索欄的代碼。這裏'customsearchbar'類是從searchrenderer繼承而來的。

+0

你能分享無論你的代碼我們的XAML你使用調用搜索欄? – cvanbeek

+0

嗨cvanbeek,我正在添加示例代碼,我正在使用。 – Deepak

+0

我無法重現您的問題。它適合您的代碼(有一些拼寫錯誤)在我身邊。我發佈我的代碼給你。希望能幫助到你! –

回答

0

它適用於我。

這裏是我的示例代碼:

MySearchBar.cs在PCL:

using Xamarin.Forms; 

namespace Kevin_XF 
{ 
    public class MySearchBar : SearchBar 
    { 

    } 
} 

MySearchBarRenderer.cs在iOS平臺:

using Xamarin.Forms; 
using Xamarin.Forms.Platform.iOS; 
using Kevin_XF.iOS; 
using Kevin_XF; 
using System.ComponentModel; 

[assembly: ExportRenderer(typeof(MySearchBar),typeof(MySearchBarRenderer))] 
namespace Kevin_XF.iOS 
{ 
    public class MySearchBarRenderer: SearchBarRenderer 
    { 

     protected override void OnElementPropertyChanged(object sender, PropertyChangedEventArgs e) 
     { 
      base.OnElementPropertyChanged(sender, e); 

      if (Control != null) 
      { 
       Control.ShowsCancelButton = false; 
      } 
     } 
    } 
} 

中的MainPage XAML代碼.xaml:

<StackLayout> 
     <local:MySearchBar x:Name = "CustomSearchbar" BackgroundColor ="Transparent" HorizontalOptions = "StartAndExpand" VerticalOptions = "CenterAndExpand" /> 
</StackLayout> 

它的工作原理是這樣的:

enter image description here

+0

@Deepak,我的回答對你有幫助嗎? –