Coder Social home page Coder Social logo

xfx.controls's Introduction

Xamarin Forms Extended Controls

Description Xfx Controls are just a few controls that differ from the baked in Xamarin.Forms Controls.

iOS Android UWP Mac
XfxEntry
XfxComboBox
XfxCardView


Getting Started

Android

In your MainActivity, initialize XfxControls just before initializing Xamarin Forms

XfxControls.Init();
global::Xamarin.Forms.Forms.Init(this, bundle);

note: XfxEntry and XfxComboBox REQUIRES your app to use an AppCompat theme.

iOS

In your AppDelegate, initialize XfxControls just before initializing Xamarin Forms

XfxControls.Init();
global::Xamarin.Forms.Forms.Init();

Demos

Code

Declaration is exactly the same as a Xamarin.Forms.Entry, with some added properties

XfxEntry

<!-- XfxEntry-->
<xfx:XfxEntry Placeholder="Enter your name"
              Text="{Binding Name}"
              ErrorText="{Binding NameErrorText}" />

When the ErrorText property is set, the ErrorText will display, otherwise if it is null or empty, it's removed.

XfxComboBox

<!-- XfxComboBox-->
<xfx:XfxComboBox Placeholder="Enter your email address"
                 Text="{Binding EmailAddress}"
                 ItemsSource="{Binding EmailSuggestions}"
                 SortingAlgorithm="{Binding SortingAlgorithm}"/>

The XfxComboBox extends the XfxEntry and therefore also includes the ErrorText property.
Beyond that there is an ItemsSource property, SelectedItem property, and a SortingAlgorithm property.
The first two are pretty self explanitory, but here's an example of how you can set the SortingAlgorithm

public class MyViewModel : INotifyPropertyChanged
{
	public Func<string, ICollection<string>, ICollection<string>> SortingAlgorithm { get; } = (text, values) => values
		.Where(x => x.StartsWith(text, StringComparison.CurrentCultureIgnoreCase)))
		.OrderBy(x => x)
		.ToList();
}

XfxCardView

<!-- XfxCardView -->
<xfx:XfxCardView CornerRadius="3" Elevation="3">
    <StackLayout Padding="0" Margin="0">
        <Image Source="http://lorempixel.com/1024/200/abstract" HorizontalOptions="Fill" Aspect="Fill" />
        <Label Margin="8">
            <Label.Text>
                Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse fringilla turpis turpis, id lobortis dolor vestibulum condimentum.
            </Label.Text>
        </Label>
        <Button Text="Go to Main Page" Clicked="Button_OnClicked" Margin="8" />
    </StackLayout>
</xfx:XfxCardView>

Contributions / Thanks

License

Licensed MIT, please review the license file.

xfx.controls's People

Contributors

antkers avatar breyed avatar chaseflorell avatar felipeleon73 avatar gidgol avatar jnosek avatar vyfster avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

xfx.controls's Issues

Mac Support

Feature Request:

Looking for help on getting these controls working on the Mac platform

Dropdown view position is at wrong position when combobox is not a direct child of scroll view

Please fill out either the bug or feature request section and remove whatever section you are not using.

Bug

  • Version Number of Control: latest
  • Device Tested On: iOS simulator
  • Simulator Tested On: iOS simulator

Expected Behavior

Dropdown view should be shown below combobox

Actual Behavior

Dropdown view is shown at the top of scrollview

Steps to reproduce the Behavior

place combobox in stacklayout/grid then place them in scrollview

image

UWP Support

Feature Request:

Looking for help on getting these controls working on the UWP platform

How to turn off Autocorrection, spell checker, AutoCapitaliztion for XfxEntry control

I need to turn off autocorrection when typing some text. Right now if i something say serah then on iOS it will automatically by corrected to search. Is there a build in property already for this?

Bug

  • Version Number of Control:
  • Device Tested On:
  • Simulator Tested On:

Affects

  • iOS
  • Android

Expected Behavior

Actual Behavior

Steps to reproduce the Behavior

Link to Github Reproduction (optional but recommended)

Repro

Feature Request:

Please fill in what you would like

How to pass selected id which is not shown to the user but used for other purposes(to save to db) behind the scenes

Hi,
This is very very useful plugin in all XAMARIN FORMS plugins so far.

I have question and stuck with this for a while.

image

here item source return type has hardcoded List of string but I want to select id for the selected item

I see that there is selected item property.
But how do I set my list to contain id and value pair in first place but not show Id on the screen.

I tried following way to set but not succesful with the approach.

public class SelectList<T>
 {
     public T Value { get; set; }

     public string Text { get; set; }

     public string[] ValueText => (Value + "|" + Text).Split('|');

     public string GetSelectValue => ValueText[0];
     public string GetSelectedText => ValueText[1];
 }

 public List<SelectList<Guid>> GetData()
 {
 //return data here
 }

 public MainPageViewModel()
 {
   var data=GetData(); 
    var names =data.Select(n => n.GetSelectedText);

     //NamesSuggestions.ReplaceRange(data) ; 
        NamesSuggestions.ReplaceRange(names) ;

    //In above line,I want to replace entire list with type SelectList<Guid> rather than just list of strings 
   //and show only names on the page. 
   //When selected from the list I want to pass the object but  how do I set the entire object. 
 }

 public ObsColl<string> NamesSuggestions { get; } = new ObsColl<string>();
//public ObsColl<SelectList<Guid>> ObsColl{ get; } = new ObsColl<SelectList<Guid>>();

where ObsColl is short form of ObservableRangeCollection(using James MVVM helpers plugin)

I need to look in selectedItem property(not sure at this stage)

My goal is to make this generic so that I can get and set dynamic objects(for reusability on different types)
Ex:I can have list to show top 10 people and I don't know whether depending on index is suitable for my needs in future or not.

Work around is also Ok but looking for better way.

Any help is appreciated.

Current Text value gets lost when model properties are already populated.

Please fill out either the bug or feature request section and remove whatever section you are not using.

Bug

  • Version Number of Control: 1.0.1.4
  • Device Tested On: Nexus 6P
  • Simulator Tested On: n/a

Expected Behavior

Model property values are displayed in XfxEntry control upon page load.

Actual Behavior

Model property values are not displayed.

Steps to reproduce the Behavior

In the example app -> MainPage constructor...

    public MainPage()
    {
        Model = new MainPageModel();
        Model.Name = "Chase";
        BindingContext = Model;

        InitializeComponent();
    }

In MainPage.xaml, remove...

<ContentPage.BindingContext>
    <app:MainPageModel />
</ContentPage.BindingContext>

In XfxEntryRendererDroid.OnElementChanged(), calling SetText() before SetInputType() seems to resolve the issue.

Events `Focused` and `Unfocused` do not fire.

Bug

Events Focused and Unfocused do not fire.

  • Version Number of Control: 1.0.0.2
  • Device Tested On: Any
  • Simulator Tested On: Any

Expected Behavior

Tapping in an XfxEntry or XfxComboBox should invoke the Focus event.
Tapping out of an XfxEntry or XfxComboBox should invoke the UnFocus event.

Actual Behavior

Neither event is called

Steps to reproduce the Behavior

Perform the steps in Expected Behavior

Xfx ComboBox for floating labels showing exception- Java.Lang.NoSuchMethodError:

Exception

[ERROR] FATAL UNHANDLED EXCEPTION: Java.Lang.NoSuchMethodError: no method with name='setBackgroundTintList' signature='(Landroid/content/res/ColorStateList;)V' in class Landroid/view/View;
01-05 08:20:08.862 E/mono-rt (12780): at (wrapper dynamic-method) System.Object:dc6c2164-db1e-49f0-a517-fbd887a703b3 (intptr,intptr,intptr,intptr,intptr)
01-05 08:20:08.862 E/mono-rt (12780): --- End of managed Java.Lang.NoSuchMethodError stack trace ---
01-05 08:20:08.862 E/mono-rt (12780): java.lang.NoSuchMethodError: no method with name='setBackgroundTintList' signature='(Landroid/content/res/ColorStateList;)V' in class Landroid/view/View;

  • Version Number of software: Visual studio 2017 15.5.2 latest version
  • Version Number of Control: xfx controls stable version 1.1.3
  • Application Tested On: Nexus5- 4.4.4 API-19

xfx:XfxEntry cast in EditText

HI
I am going to cast xfx:XfxEntry to EditText for show hide password but it gives me
<xfx:XfxEntry Placeholder="Password" IsPassword="true" Text="{Binding Password}"> <xfx:XfxEntry.Effects> <todo:ShowHidePassEffect /> </xfx:XfxEntry.Effects> </xfx:XfxEntry>

and casting code : -
EditText editText = ((EditText)Control);

It works fine if I use normal entity

Please help me

XfxEntry and XfxComboBox colors

Bug

  • Version Number of Control: 1.0.1.4
  • Device Tested On: Any Android
  • Simulator Tested On: Any Android

Expected Behavior

Setting Placeholder color will set the color of the placeholder

Actual Behavior

Setting the Placeholder color has no effect

Steps to reproduce the Behavior

Try to set the color of a placeholder

Feature Request:

There's also a feature request attached. Currently there's no way to set the Highlight color of a control. The Highlight color should update the underline as well as the label of an XfxEntry and an XfxComboBox.

Api Change:

public static readonly BindableProperty HighlightColorProperty = BindableProperty.Create(nameof(HighlightColor),
    typeof(Color),
    typeof(XfxEntry),
    Color.Accent);

/// <summary>
/// Sets the color of the active label and active underline. This is a bindable property.
/// </summary>
public Color HighlightColor
{
    get { return (Color) GetValue(HighlightColorProperty); }
    set { SetValue(HighlightColorProperty, value); }
}

Entry's FontSize is ignored

Bug

  • Version Number of Control: 1.0.4
  • Device Tested On: Android 6 API 23
  • Simulator Tested On: Default Android Emulator

Expected Behavior

FontSize sets the size of the text in the input.

Actual Behavior

FontSize is ignored.

image

Also, notice that on the last example, the bottom line of the input touches the text. So FontSize seems to have some kind of effect, but not as much as expected xD

Steps to reproduce the Behavior

<Entry Placeholder="Entry (FontSize=8)" FontSize="8" />
<xfx:XfxEntry Placeholder="XfxEntry (FontSize=8)" FontSize="8" />
<xfx:XfxEntry Placeholder="XfxEntry (FontSize=2)" FontSize="2" />

Thanks for your work!

Spacing issue in XFX Entry

Hello,

I have tried using around 6 XFX entries one after the other in a vertical manner in a form. I could see that the spacing between the entries are more. Is there any way to reduce it?

XfxEntry HorizontalTextAlignment End

In XfxEntry HorizontalTextAlignment End the error message remains on the Start side and not flipped to be end aligned, Any help?

<xfx:XfxEntry Grid.Row="1" HorizontalTextAlignment="End" Grid.Column="1" Placeholder="أكتب اسمك" Text="{Binding Name}" ErrorText="خطأ" />

XfxCardView

Feature Request:

New Xfx.CardView control

    public class CardView : ContentView
    {
        public CardView()
        {
            BackgroundColor = Color.White;
            Padding = 0;
        }
        public static readonly BindableProperty CornerRadiusProperty = BindableProperty.Create(nameof(CornerRadius),
            typeof (float),
            typeof (CardView),
            3.0f);

        /// <summary>
        ///    CornerRadius summary. This is a bindable property.
        /// </summary>
        public float CornerRadius
        {
            get { return (float) GetValue(CornerRadiusProperty); }
            set { SetValue(CornerRadiusProperty, value); }
        }


        protected override SizeRequest OnMeasure(double widthConstraint, double heightConstraint)
        {
            if (Content == null)
                return new SizeRequest(new Size(100, 100));

            return base.OnMeasure(widthConstraint, heightConstraint);
        }
    }

Changing/Updating Itemsource at Runtime

How can I change the Itemsource property in Runtime? I am fixing threshold in xamal to 8, When the selected item text reached 7; I want to change the Itemsource. Based on the new Itemsource the algorithm should be executed and show the result. Is't possible with this plugin?

Autocomplete suggestions positioned in wrong position

Please fill out either the bug or feature request section and remove whatever section you are not using.

Bug

  • Version Number of Control: Latest
  • Device Tested on: iPhone 5s
  • Simulator Tested on: iPhone 7 Plus - iOS 11.0

Expected Behavior

XfxComboBox should show the suggestions above or below the entry based on its position.

Actual Behavior

XfxComboBox should not show the suggestions above the entry when I kept the combobox bottom of the screen.

Steps to reproduce the Behavior

  1. Keep the Combobox at the bottom of the screen
  2. Type your entry in combobox.

Find the Screenshot below:

Feature Request:

Please fill in what you would like

XfxEntry not masking when IsPassword=true in Xamarin.Forms Android

Bug

There seems to be a bug within XfxEntry, whereby the control will not mask input when IsPassword=true in Xamarin.Forms Android.

  • Version Number of Control: 1.0.0.2
  • Device Tested On: Samsung Galaxy S5 (Android 6.0) and S6 (Android 7.0)
  • Simulator Tested On: Nexus 5 (Android 6.0) and Nexus 6 (Android 7.0)

Expected Behavior

XfxEntry Control should mask the field when the IsPassword property is set to true.

Actual Behavior

No masking of the field occurs

Steps to reproduce the Behavior

Using C# (not XAML), create a simple screen with a Password entry field and set the IsPassword property to true.

XfxEntry numeric keyboard doesn't have decimals on iOS

Bug

XfxEntry shows "NumberPad" and not "DecimalPad" when its keyboard type is set to "Numeric"

  • Version Number of Control: 1.1.3
  • Device Tested On: iPhone 7
  • Simulator Tested On:

Affects

  • iOS
  • Android

Expected Behavior

The Numeric keyboard type should be able to take any character to make a "number," including the decimal point and hyphen.

Actual Behavior

The keyboard is just a 0-9 whole number keyboard

Steps to reproduce the Behavior

put an XfxEntry control on a ContentPage and specify the keyboard to be "Numeric"

How to change the placeholder text size in xfxentry

I am using the latest stable version. Two issues i am facing now are

  1. I did not find any property for setting the size of placeholder text. I can set the input text size but not the placeholder text.

  2. I need to change the underline color of the entry as it is default taking the color used to tint the widgets which i need to be a different one.

Can you please help me?

API Change to disable floating labels.

Feature Request:

API Change to disable floating labels. This will aid developers who want to use the control but continue to use their standard labels.

<xfx:XfxEntry IsLabelFloating="False" />

Should default to true.

Android should be straight forward, just call HintEnabled=Element.IsLabelFloating

iOS will just hook into the animation trigger of the FloatedLabel.

Linker Exception in "Release" Android build

Bug

We are using the XfxControls package in a Xamarin.Forms app (Droid and iOS). The Xamarin Forms version is 2.4.0.74863. When we try to compile our primary Droid platform project, we get a build error that the "LinkAssemblies task failed unexpectedly." The actual build error is quoted below. When we build the project in "Debug" mode, it works fine. If we select "Don't Link" in the Linker Behavior section of the Droid project options in the Release configuration, the build completes.

  • Version Number of Control: 1.1.3
  • Device Tested On: N/A
  • Simulator Tested On: N/A

Affects

  • iOS
  • Android (Min version API21, target version API26, Xamarin Android version 8.1.0.25, SDK Tools version 25.2.5, SDK Platform Tools version 27.0.1, SDK Build Tools version 26.0.3)

Expected Behavior

Project compiles without any linker errors

Actual Behavior

Droid project compilation fails with linker exception like this:

/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.targets(1696,5): error MSB4018: The "LinkAssemblies" task failed unexpectedly.
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.targets(1696,5): error MSB4018: Mono.Linker.MarkException: Error processing method: 'System.Void Xfx.Controls.Droid.XfxVisualElementManager::Init(Xamarin.Forms.Platform.Android.IVisualElementRenderer,Xamarin.Forms.Platform.Android.VisualElementRendererFlags)' in assembly: 'Xfx.Controls.Droid.dll' ---> Mono.Cecil.ResolutionException: Failed to resolve System.Void Xamarin.Forms.Platform.Android.VisualElementPackager::.ctor(Xamarin.Forms.Platform.Android.IVisualElementRenderer,Xamarin.Forms.VisualElement)
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.targets(1696,5): error MSB4018:   at Mono.Linker.Steps.MarkStep.HandleUnresolvedMethod (Mono.Cecil.MethodReference reference) [0x00006] in <acf4a3302c8d4a7eaf06af6dce1aafb2>:0 
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.targets(1696,5): error MSB4018:   at Mono.Linker.Steps.MarkStep.MarkMethod (Mono.Cecil.MethodReference reference) [0x00049] in <acf4a3302c8d4a7eaf06af6dce1aafb2>:0 
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.targets(1696,5): error MSB4018:   at Mono.Linker.Steps.MarkStep.MarkInstruction (Mono.Cecil.Cil.Instruction instruction) [0x00040] in <acf4a3302c8d4a7eaf06af6dce1aafb2>:0 
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.targets(1696,5): error MSB4018:   at Mono.Linker.Steps.MarkStep.MarkMethodBody (Mono.Cecil.Cil.MethodBody body) [0x00098] in <acf4a3302c8d4a7eaf06af6dce1aafb2>:0 
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.targets(1696,5): error MSB4018:   at Mono.Linker.Steps.MarkStep.ProcessMethod (Mono.Cecil.MethodDefinition method) [0x00161] in <acf4a3302c8d4a7eaf06af6dce1aafb2>:0 
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.targets(1696,5): error MSB4018:   at Mono.Linker.Steps.MarkStep.ProcessQueue () [0x0001a] in <acf4a3302c8d4a7eaf06af6dce1aafb2>:0 
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.targets(1696,5): error MSB4018:    --- End of inner exception stack trace ---
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.targets(1696,5): error MSB4018:   at Mono.Linker.Steps.MarkStep.ProcessQueue () [0x00046] in <acf4a3302c8d4a7eaf06af6dce1aafb2>:0 
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.targets(1696,5): error MSB4018:   at Mono.Linker.Steps.MarkStep.ProcessEntireQueue () [0x00002] in <acf4a3302c8d4a7eaf06af6dce1aafb2>:0 
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.targets(1696,5): error MSB4018:   at Mono.Linker.Steps.MarkStep.Process () [0x00013] in <acf4a3302c8d4a7eaf06af6dce1aafb2>:0 
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.targets(1696,5): error MSB4018:   at Mono.Linker.Steps.MarkStep.Process (Mono.Linker.LinkContext context) [0x0000d] in <acf4a3302c8d4a7eaf06af6dce1aafb2>:0 
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.targets(1696,5): error MSB4018:   at Mono.Linker.Pipeline.Process (Mono.Linker.LinkContext context) [0x0001b] in <acf4a3302c8d4a7eaf06af6dce1aafb2>:0 
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.targets(1696,5): error MSB4018:   at MonoDroid.Tuner.Linker.Run (Mono.Linker.Pipeline pipeline, Mono.Linker.LinkContext context) [0x00000] in <acf4a3302c8d4a7eaf06af6dce1aafb2>:0 
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.targets(1696,5): error MSB4018:   at MonoDroid.Tuner.Linker.Process (MonoDroid.Tuner.LinkerOptions options, Mono.Linker.LinkContext& context) [0x00070] in <acf4a3302c8d4a7eaf06af6dce1aafb2>:0 
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.targets(1696,5): error MSB4018:   at Xamarin.Android.Tasks.LinkAssemblies.Execute (Java.Interop.Tools.Cecil.DirectoryAssemblyResolver res) [0x002c8] in <acf4a3302c8d4a7eaf06af6dce1aafb2>:0 
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.targets(1696,5): error MSB4018:   at Xamarin.Android.Tasks.LinkAssemblies.Execute () [0x001fa] in <acf4a3302c8d4a7eaf06af6dce1aafb2>:0 
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.targets(1696,5): error MSB4018:   at Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute () [0x00023] in /Users/builder/data/lanes/4992/mono-mac-sdk/external/bockbuild/builds/msbuild-15.4/src/Build/BackEnd/TaskExecutionHost/TaskExecutionHost.cs:631 
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.targets(1696,5): error MSB4018:   at Microsoft.Build.BackEnd.TaskBuilder+<ExecuteInstantiatedTask>d__26.MoveNext () [0x0022d] in /Users/builder/data/lanes/4992/mono-mac-sdk/external/bockbuild/builds/msbuild-15.4/src/Build/BackEnd/Components/RequestBuilder/TaskBuilder.cs:787 

Steps to reproduce the Behavior

Enhancements for XFX Entry

Hello,

Is there any chance for having the properties like,

Inactive Placeholder text color, Inactive placeholder text font and Active placeholder text font.

If this is there we can customize controls in lot way.... :)

Problem in Xfx.Controls

i made a project using Xfx.Controls but it appear as normal entity placeholder not change as label
Code Shown Below:

<?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
             xmlns:xfx="clr-namespace:Xfx;assembly=Xfx.Controls"
             x:Class="Todo.Login">
    <ContentPage.Content>
        <StackLayout Padding="28">
            <xfx:XfxEntry Placeholder="Enter your email address"
                             Text="{Binding EmailAddress}"
                          Keyboard="Email"/>
            <Entry Placeholder="Password" IsPassword="true" Text="{Binding Password}" />
            <Button Text="Login"  WidthRequest="200" HorizontalOptions="CenterAndExpand"  BorderRadius="26" ContentLayout="Top,0" TextColor="White"  BackgroundColor="#2196F3" />
        </StackLayout>
    </ContentPage.Content>
</ContentPage>

Please help me

Core lib to support .NETStandard

Bug

Adding Xfx.Controls to a Profile259 project fails because Profile111 isn't compatible.

  • Version Number of Control: 1.0.3
  • Device Tested On: n/a
  • Simulator Tested On: n/a

Expected Behavior

Project should install nuget package into a Profile259 project

Actual Behavior

Error message says that Profile111 isn't compatible.

Steps to reproduce the Behavior

  • create PCL with Profile258
  • > Install-Package Xfx.Controls

Feature Request:

Move entire portable project over to .NETStandard and update all nuget bits to match.

XfxEntry not clickable inside ViewCell

Please fill out either the bug or feature request section and remove whatever section you are not using.

Bug

  • Version Number of Control: latest
  • Device Tested On: Nexus 5x 7.1.2
  • Simulator Tested On: Android Emulator

Expected Behavior

XfxEntry editable

Actual Behavior

XfxEntry is not clickable

Steps to reproduce the Behavior

<TableView Intent="Form">
  <TableRoot>
    <TableSection Title="Dati generali">
      <ViewCell>
        <StackLayout>
          <xfx:XfxEntry Placeholder="Ubicazione" Text="{Binding DatiGeneraliUbicazione}"/>
        </StackLayout>
      </ViewCell>
    </TableSection>
  </TableRoot>
</TableView>

Entry's error text displayed even if there is no ErrorText set

Bug (Feature Request maybe?)

  • Version Number of Control: 1.0.4
  • Device Tested On: Android 6 API 23
  • Simulator Tested On: Default Android Emulator

Expected Behavior

When ErrorText is empty/null, then the container that contains the error text disappears.

Actual Behavior

The space used for the ErrorText is always there and that eats a LOT of space. I don't know if that's intentional, if it is expected, is it feasible to add a new property like ShowEmptyErrorBlock?

image

Steps to reproduce the Behavior

<Frame>
    <StackLayout Spacing="0">
        <Entry Placeholder="Entry 1" />
        <Entry Placeholder="Entry 2" />
    </StackLayout>
</Frame>

<Frame>
    <StackLayout Spacing="0">
        <xfx:XfxEntry Placeholder="Entry 1" />
        <xfx:XfxEntry Placeholder="Entry 2" />
    </StackLayout>
</Frame>

Xamarin Studio support for Mac

Opening the project on Mac Xamarin Studio shows an error of "Project does not support framework '.NETPortable,Version=v5.0'"

Bug

  • Device Tested On: Xamarin Studio for Mac

Expected Behavior

It should open the project normally

Actual Behavior

Shows an error : Project does not support framework '.NETPortable,Version=v5.0'

Steps to reproduce the Behavior

By opening the project solution

IsEnabled not working for XfxEntry

Bug

  • Version Number of Control: 1.0.2.0
  • Device Tested On: Samsung Galaxy S6
  • Simulator Tested On: Any android

Expected Behavior

Changing IsEnabled to False will update the Entry to a disabled state

Actual Behavior

Field is still enabled

Steps to reproduce the Behavior

Try set IsEnabled to False

Feature Request:

Update Render so it will listen to IsEnabled updates

Kind regards,
Sander

Combo box Sorting Algorithm

Expected Behavior

While trying to enter input into Combo Box, Ideal it should predict related List even when I type single character.

Actual Behavior

Combo Box not predicting for single character, for auto predict have to enter at least 2 characters.

photo_2017-11-23_17-16-58

photo_2017-11-23_17-18-01

Change Color

hi, its possible change color of label and line below?

After updating XCode 9 Xfx.ComboBox stops working.

Bug

  • Version Number of Control: 1.0.4
  • Device Tested On:
  • Simulator Tested On: iPhone 8 Simulator
    unnamed 1

I my case I have 2 Xamarin Pages, on first page when I click on button user wants to navigate to next Page which contains Pin code Combo Box (Below is the code for used ComboBox)

                        <StackLayout Orientation="Vertical" Spacing="2">
                            <StackLayout Orientation="Horizontal" Spacing="0" Padding="4,0">
                                <Label TextColor="Gray" Text="Pincode" FontSize="16" FontFamily="Helvetica-Light"/>
                                <Label TextColor="Red" Text="*" FontSize="16" FontFamily="Helvetica-Light"/>
                            </StackLayout>

                            <controls:RoundRectFrame HorizontalOptions="FillAndExpand" VerticalOptions="FillAndExpand" Padding="0" HeightRequest="40">
                                <StackLayout Orientation="Horizontal" Padding="1,0,10,0" BackgroundColor="Transparent">
                                    <xfx:XfxComboBox 
                                        Text="{Binding Pincode, Mode=TwoWay}" 
                                        FontSize="16"  
                                        FontFamily="Helvetica-Light" TextColor="Black"
                                        Keyboard="Numeric"
                                        FloatingHintEnabled="False"
                                        HorizontalOptions="FillAndExpand"
                                        VerticalOptions="FillAndExpand"
                                        ItemsSource="{Binding PinCodes}" 
                                        SortingAlgorithm="{Binding SortingAlgorithm}">
                                        <xfx:XfxComboBox.Behaviors>
                                            <local:MaxLengthValidatorBehavior x:Name="pincodeEntryLimit"/>
                                            <local:NumberValidationBehavior />
                                        </xfx:XfxComboBox.Behaviors>
                                    </xfx:XfxComboBox>
                                </StackLayout>
                            </controls:RoundRectFrame>

                        </StackLayout>

But expected behavior not working(Page not redirecting to next screen which contains ComboBox).
After removing Combo Box everything works correctly and redirecting to next page..

Request Relase++

Feature Request:

it is possible to have a relase with the fix ErrorDisplay = "None"

Android ViewGroup wrapper for TextInputLayout is focusable

Bug

When user focuses on an entry and tries to focus the next entry in the same page by pressing the tab button on the physical keybaord (while the app is running on emulator), the ViewGroup wrapper wrapping the Android TextInputLayout gains focus and shows up the Soft Input Keyboard. At this point of time, when user types anything on SIP, nothing happens, and when user presses the tab key again, the EditText gains the focus.

  • Version Number of Control: 1.1.3
  • Device Tested On: None
  • Simulator Tested On: Android Oreo Emulator

Affects

  • iOS
  • Android

Expected Behavior

The Wrapping ViewGroup i.e. XfxRendererDroid, wrapping the Android TextInputLayout should not be focusable, only the wrapped TextInputLayout should be focusable.

Actual Behavior

Both Wrapper and TextInputLayout are focusable

Focus toggling between multiple entries in endless loop

Bug

When focus is switched fast enough between multiple entries, the program is running into endless loop where it keeps on toggling focus between the entries endlessly, and pressing the back button crashes the app.

  • Version Number of Control: 1.1.3
  • Device Tested On: NA
  • Simulator Tested On: Android Oreo Emulator

Affects

  • iOS
  • Android

Expected Behavior

Switching focus between the entries rapidly should not lead to looping.

Actual Behavior

Switching focus between entries rapidly is leading to focus, unfocus loop.

Steps to reproduce the Behavior

Run the example app on the android emulator, and toggle focus on entries by tapping tab button rapidly on physical keyboard. The app enters into the focus unfocus loop.

Feature: XfxEntry line color property

Please fill out either the bug or feature request section and remove whatever section you are not using.
Need property to change the color of Entry Line(Line below the Text Entered) on Android. Currently on dark background the entry field on android is almost invisible.

Bug

  • Version Number of Control:
  • Device Tested On:
  • Simulator Tested On:

Affects

  • iOS
  • Android

Expected Behavior

Actual Behavior

Steps to reproduce the Behavior

Link to Github Reproduction (optional but recommended)

Repro

Feature Request:

Please fill in what you would like

How can I do word wrap in xfxEntry ?

  • Version Number of Control: 1.1.3
  • Device Tested On: Android and I phone
  • Simulator Tested On:

Affects

  • iOS
  • Android

Input text given in xfxEntry is not wrapping to the next line. Is there any property similar to line break mode like in labels ?

Please suggest some solution to slove this issue.

Custom Object Collection

I am trying to set Observable collection of my custom object (two string properties), and below is the algorithm property I set. Suggestions are not being showed. Also I have to fill my itemsource from backend based on the string entered in the Entrybox. Am I missing anything here?

Item Source

 SuggestionItemSource = new ObservableCollection<PatientSearchEntity>()
            {
                new SearchEntity(){  Name="Rajeshkumar",MobileNumber="123"},
                new SearchEntity(){  Name="Divya",MobileNumber="456"},
                new SearchEntity(){  Name="Satheesh",MobileNumber="789"},
                new SearchEntity(){  Name="Raja",MobileNumber="1011"},
                new SearchEntity(){  Name="Sherin",MobileNumber="1213"},
                new SearchEntity(){  Name="Abihlash",MobileNumber="1415"},
                new SearchEntity(){  Name="Vasu",MobileNumber="1617"}
            };

Algorithm

 public Func SearchEntity , ICollectionSearchEntity, ICollectionSearchEntity  SortingAlgorithm { get; } =
          (text, values) => values
              .Where(x => x.Name.ToLower().StartsWith(text.Name.ToLower()))
              .OrderBy(x => x)
              .ToList();

SearchEntity

class SearchEntity:INotifyPropertyChanged
    {
        private string _name;
        private string _mobilenumber;
        public string Name {
            get { return _name; }
            set { _name = value ; OnPropertyChanged("Name"); }
        }
        public string MobileNumber
        {
            get { return _mobilenumber; }
            set { _mobilenumber = value; OnPropertyChanged("MobileNumber"); }
        }

        public event PropertyChangedEventHandler PropertyChanged;

        public virtual void OnPropertyChanged(string propertyName)
        {
            if (PropertyChanged == null)
                return;

            PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
        }
    }

Xaml

<StackLayout>
            <xfx:XfxComboBox   Text="{Binding SelectedPatient.Name}"
                             ItemsSource="{Binding SuggestionItemSource}"
                              SortingAlgorithm="{Binding SortingAlgorithm}" />
</StackLayout>

XfxCardView Tapping

Please fill out either the bug or feature request section and remove whatever section you are not using.

Bug

  • Version Number of Control:
  • Device Tested On Samsung, Moto G3
  • Simulator Tested On Android Nexus, iPhone 8 Plus

Affects

  • iOS
  • Android

Expected Behavior

Tap Gesture over Cardview on listview tapping should be working

Actual Behavior

Tap Gesture over Cardview on listview tapping is not working

Can't set x:Name property to xfx Combobox

Bug

  • Version Number of Control: 1.0.4
  • Device Tested On: YU Yuphoria
  • Xamarin Forms Version: 2.3.3.193
  • Simulator Tested On:

Expected Behavior

Set x:Name property to Combobox, so I can access the control in the codebehind xaml.cs page.

Actual Behavior

Setting x:Name property results in the following error

_Error: Sampling.Home.xaml.g.cs: error CS0400: The type or namespace name 'Xfx' could not be found in the global namespace (are you missing an assembly reference?)_

Steps to reproduce the Behavior

Feature Request:

Please fill in what you would like

Null Reference exception in XfxEntryRendererDroid

Please fill out either the bug or feature request section and remove whatever section you are not using.

Bug

I received a hockey app crash report like 4 times, just a null reference exception, its happen only in Android.

android.runtime.JavaProxyThrowable: System.NullReferenceException: Object reference not set to an instance of an object

Xfx.Controls.Droid.Renderers XfxEntryRendererDroid get_EditText 1 Xfx.Controls.Droid.Renderers XfxEntryRendererDroid+<>c__DisplayClass12_0 b__0 2 Java.Lang Thread+RunnableImplementor Run 3 Java.Lang IRunnableInvoker n_Run 4 mono.java.lang RunnableImplementor n_run 5 mono.java.lang RunnableImplementor run 6 android.os Handler handleCallback 7 android.os Handler dispatchMessage 8 android.os Looper loop 9 android.app ActivityThread main 10 java.lang.reflect Method invoke 11 com.android.internal.os ZygoteInit$MethodAndArgsCaller run 12 com.android.internal.os ZygoteInit main Ja va.Lang.Thread

  • Version Number of Control:
    1.0.4

  • Device Tested On:
    Huawey P9.

  • Simulator Tested On:
    x86 API 24

Expected Behavior

Dont Crash

Actual Behavior

Crash

Steps to reproduce the Behavior

I cant reproduce the exception :( I think if you do something while the animation of the edit text is running it crash

Feature Request:

I think we need a null check in this line in the XfxEntryRendererDroid class
line 36: private EditText EditText => Control.EditText;

Wrong position in iphone but proper in android.

image

1.This is happening only in ios. Tried with iphone 6, 7plus and X..Same issue on all devices.
2.When I rotate, text is not shown and I think it's moving towards left and cutting at edges(Tested in 6 and 7 plus real devices).

image

Need Build Scripts

Feature Request:

Due to my own incompetence, I've decided that even this little project needs a build script. I'd like to use this opportunity to use something other than PowerShell, so I've decided to use cake for this one.

XfxPicker

Feature Request:

Create a Picker control that mimics the existing Xamarin.Forms.Picker but also includes a floating label and error messaging.

An added bonus would be to use the forthcoming bindable picker.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.